我正在寻找一个超级简单的例子,似乎找不到。我有一个MainWindow
。当一个按钮被按下时,我想创建一个新的窗口,在MainWindow
的布局中打开,成为它的一部分。
我有一段代码,当按下按钮调用这个插槽时,它会被调用;当它被调用时,我的QLabel会出现,但我的QWidget不会:
QWidget *test = new QWidget();
test->setGeometry(QRect(100,100,100,100));
layout->addWidget(test,0,0)
//Operation Mode
QLabel *operationalModeLabel1 = new QLabel("TEST");
layout->addWidget(operationalModeLabel1,2,1);
字符串
1条答案
按热度按时间mrphzbgm1#
“缺乏示例”的原因是你想错了。你所描述的一直都在做,通过 * 每一个使用布局的Qt示例 *!我是认真的。当你向布局添加一个小部件时,它 * 并不重要 *。“现在”添加小部件和“以后”添加小部件没有什么神奇之处。
只要想想这个问题的标题:它没有任何意义。所有的小部件都必须添加到已经存在的布局中!根据定义,如果没有布局,你怎么能添加小部件呢?
你的代码是错误的,仅此而已。在一个由布局管理的小部件上设置几何形状总是毫无意义的。一旦你将它添加到布局中,布局就会改变几何形状。
因为你在布局中添加了一个空的小部件,你很可能看不到它。这就是为什么标签会显示出来-它不是一个空的小部件。
如果你想要一个固定大小的小部件,为了更容易被注意到,只要设置它的固定大小就可以了。更好的是,把它变成红色,这样它就能脱颖而出。
字符串