首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >QWidget中的QLayout

QWidget中的QLayout
EN

Stack Overflow用户
提问于 2018-07-20 03:42:10
回答 1查看 190关注 0票数 -1

我正在用QT为我未来的游戏做一个网格。

我的QGridlayout出了点问题:

这是我的Grid构造函数:

代码语言:javascript
运行
复制
                                Grid::Grid(QWidget *parent) :
        QWidget(parent),
        m_grid(new Cell**[Y_MAX])
{
    QGridLayout             *layout = new QGridLayout(this);
    int                     x;
    int                     y;

    for (y = 0; y < Y_MAX; y++)
    {
        m_grid[y] = new Cell*[X_MAX];
        for (x = 0; x < X_MAX; x++)
        {
            m_grid[y][x] = new Cell(x, y, this);
            layout->addWidget(m_grid[y][x], y, x);
        }
    }
    this->setLayout(layout);
}

如您所见,所有单元格都在网格中

你会说ok,但是哪里错了呢?问题是程序什么时候开始这是我的网格

要显示单元格,我需要调整窗口大小...为什么?.。

你能帮我一下吗?)

谢谢您抽时间见我

Ps:添加类单元格

也许从这里可以,不是吗?

代码语言:javascript
运行
复制
                                Cell::Cell(const int x, const int y, QWidget *parent) :
        QWidget(parent),
        m_x(x),
        m_y(y),
        m_btn(new QPushButton("", this))
{
    m_btn->setFixedSize(WIDTH, HEIGHT);
    m_btn->setFlat(true);
    m_btn->setEnabled(false);
    m_btn->setStyleSheet("border:1px solid #000000;border-radius: 13px;background-color: white;");
    QObject::connect(m_btn, SIGNAL(clicked()), this, SLOT(selected()));
}
EN

回答 1

Stack Overflow用户

发布于 2018-07-20 23:54:10

您的自定义小部件Cell在显示时需要有正确的大小提示。看见

sizeHint : const QSize

此属性保存小部件的推荐大小

如果此属性的值是无效的大小,则不建议使用任何大小。

如果此小部件没有布局,则sizeHint()的默认实现将返回无效的大小,否则将返回布局的首选大小。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51430625

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档