Qt向导使用一些显式函数返回页面

Qt向导使用一些显式函数返回页面,qt,wizard,Qt,Wizard,我是个新手。 我创建了一个QWizard并向其中添加了一些QWizard页面。现在,我想通过后退按钮以外的其他方式返回页面,例如:一些正弦或函数 具体地说,我想操作第2页中的一些功能,在其中显示一个消息框,并提供返回第1页的选项。QWizard有一个用于返回的插槽(如果需要,还包括下一步和重新启动) 您可以像函数调用一样手动调用插槽 wizard->back(); 或者将其连接到自定义信号 connect(someClass,&class::mysignal,wizard,&am

我是个新手。 我创建了一个QWizard并向其中添加了一些QWizard页面。现在,我想通过后退按钮以外的其他方式返回页面,例如:一些正弦或函数


具体地说,我想操作第2页中的一些功能,在其中显示一个消息框,并提供返回第1页的选项。

QWizard有一个用于
返回的插槽(如果需要,还包括
下一步
重新启动

您可以像函数调用一样手动调用插槽

wizard->back();
或者将其连接到自定义信号

connect(someClass,&class::mysignal,wizard,&QWizard::back);

当你想要一个更复杂的行为时,也许你应该考虑创建一个

Qt有一个关于如何做的指南

基本上,它是关于覆盖
QWizard::nextId()
,当向导想知道下一步跳转到哪里时,将调用此函数


但是,您不能直接跳转到某个页面。您必须回拨
/
下一步
/
重新启动

这可以通过以下方法解决:

while(wizard->currentId() != <desiredID>)
{
     wizard->back();
}
while(向导->当前ID()!=)
{
向导->返回();
}

但是要注意,如果你已经在页面之前,你不会进入无休止的循环。转到第1页
重新启动
将是一个更好的选择。或者如前所述的非线性向导

非常感谢。您知道如何转到指定的页面(例如:第5页)吗?我尝试调用向导->返回()在我的向导页面中,向导就是它添加到的向导的点。但它不起作用
void NiuFPage::在按钮上单击(){parentwizardpoint->back();}
现在一切正常。我以前将错误的函数连接到单击的信号。非常感谢您提供的详细信息