使用StackedWidget按钮更改页面无效

时间:2012-05-24 10:27:33

标签: c++ qt

我对QT很新,所以试图了解事情,所以我很可能会使用错误的工具,所以请随时说我是不是。

现在,我们想要的是一种GUI,它基本上是一种运行一组预先确定的测试步骤的方法。所以我有一个主页面列出选项(作为按钮),当选择一个按钮时,它会进入另一个页面(也可能有许多页面,我还没有决定)最终返回主页面。

因此,当我将表单页面更改为页面时,我认为这里的QStackedWidgets似乎是一种合适的方法

所以这一切都是通过Qtcreator到目前为止,我为每个选项创建了一些UI表单页面并创建了一个stackWidget,其中包含与表单一样多的页面。每个页面都被提升为我想要的表单。我的主页面有一些按钮

但我不确定如何将按钮绑定到更改页面。我在按钮上添加了一个单击信号,然后执行了此操作:

ui->stackedWidget->setCurrentIndex(1);

但它没有改变,我不确定我是否对以这种方式对页面进行硬编码感到高兴。

但是我在如何连接这样的页面时遗漏了一些明显的东西吗?

1 个答案:

答案 0 :(得分:2)

使用signals and slots。基本上每次按下按钮,都会触发信号(如clicked信号)。您可以连接到自定义插槽,然后更改堆叠小部件。例如,插槽可以

index = (index + 1) % numStacked;
ui->stackedWidget->setCurrentIndex(index);