C++ 如何检测QWizard中按下的后退按钮?

C++ 如何检测QWizard中按下的后退按钮?,c++,qt,events,wizard,signals-slots,C++,Qt,Events,Wizard,Signals Slots,我有一个QWizard,每次看到向导页面时,我都需要执行某些操作。目前,我在validateCurrentPage功能中执行此操作,但我意识到只有在按下下一步按钮时才会调用它,而不是后退按钮 我已经尝试了currentIdChanged和customButtonClicked信号,但这些信号也没有被调用 你知道在按下“后退”按钮后,我如何响应向导页面吗?我一定错过了一些简单的事情 谢谢, 艾伦 编辑:根据CMANNET85的要求添加了代码和编译器错误 QAbstractButton *backB

我有一个QWizard,每次看到向导页面时,我都需要执行某些操作。目前,我在validateCurrentPage功能中执行此操作,但我意识到只有在按下下一步按钮时才会调用它,而不是后退按钮

我已经尝试了currentIdChangedcustomButtonClicked信号,但这些信号也没有被调用

你知道在按下“后退”按钮后,我如何响应向导页面吗?我一定错过了一些简单的事情

谢谢, 艾伦

编辑:根据CMANNET85的要求添加了代码和编译器错误

QAbstractButton *backButton = button(QWizard::BackButton);
connect(backButton, SIGNAL(clicked()), this, SLOT(backClicked));
完全错误是:

错误1错误C2664:“bool QObject::connect(const QObject*,const char*,const QObject*,const char*,Qt::ConnectionType)”:无法将参数1从“QAbstractButton*”转换为“const QObject*”

使用获取后退按钮并将其连接到插槽

例如:

QAbstractButton *backButton = wizard->button(QWizard::BackButton);
connect(backButton, SIGNAL(clicked()), this, SLOT(backClicked()));

谢谢我已经试过了,但出现了错误“无法将参数1从'QAbstractButton*'转换为'const QObject*”。如果我可以通过ui->进入后退按钮。。。然后它就可以工作了。@AlanSpark还有一些其他的东西要做,因为
QAbstractButton
派生自
QObject
,你能把你用来做这件事的代码和完整的编译器错误添加到你的问题中吗?看起来这就可以完成工作了,尽管它看起来比应该的要复杂一些。不过我现在就将就一下!感谢您的帮助。除非您忘记添加“#include”,否则此错误实际上没有意义。谢谢。这确实是错误的原因。。。对不起,我自己没发现。