如何在init之后将QWidget作为子窗口小部件添加到另一个QWidget?

时间:2014-09-10 02:48:03

标签: qt qwidget

我想做的很容易。每当我触发一些插槽时,我想将QLabel添加到QFrame(或QWidget)。

如果我将代码放在MainWindow的构造函数中,即使在ui->setupUI(this)之后:

QLabel * pLabel = new QLabel("abc", ui->frame);

这是有效的

但是,如果我将此行移至MainWindow的广告位,例如shortcut,它不会显示任何内容。 我该如何正确添加?

注意:我不想将其添加到布局中。我需要覆盖其他人,我需要管理它的确切位置。

1 个答案:

答案 0 :(得分:2)

创建show()

后,您必须明确致电QLabel
QLabel * pLabel = new QLabel("abc", ui->frame);
pLabel->show();

来自documentation

  

...如果您将子窗口小部件添加到已经可见的窗口小部件,则必须   明确地显示孩子使其可见......