在运行时将一个小部件替换为另一个小部件并显示新的小部件

时间:2013-04-08 17:37:02

标签: c++ qt

我创建了一个窗口小部件列表,我将这些窗口小部件的指针存储在QList中。然后,我在主窗口小部件上有按钮,用户可以使用它来循环访问窗口小部件列表。

我使用此代码替换现有的小部件:

Shape* newShape = shapeList->moveNext();
newShape->draw();
mainLayout->addWidget(newShape, 1, 0);
update();

此代码位于连接到按钮的单击信号的SLOT中。这段代码:

shapeList->moveNext();

返回Works和现有的已添加到列表的窗口小部件。我只是没有看到ui ???的变化。

是否需要使用任何特殊代码来替换现有的小部件?

1 个答案:

答案 0 :(得分:3)

我建议您使用QStackedLayout。您需要做的就是 - 将所有小部件添加到其中,然后只需更改当前小部件。

Help article.