我正在使用Qt Designer创建QWizardPage。
我已经将文件导入Qt Creator并且它到目前为止运行正常(我可以构建项目并运行向导就好了)
现在我需要重新实现isComplete
功能,但我无法理解如何做到这一点。这些页面的名称为wizardPage{,1,2_1,_2}
。我想知道现在重新实现isComplete()
功能的最佳方法。
答案 0 :(得分:3)
为了超载isComplete()
的QWizardPage
功能,您需要自己创建QWizardPage
。基本上,只为您想要的页面布局一个表单 - 就像您对话框一样。为该页面创建一个类。对于您想要的任何检查,此类继承自QWizardPage
并重新实现isComplete()
。现在,在向导中,找到您希望页面的位置。删除其上的所有小部件,然后右键单击并选择Promote Widget...
。输入您的班级名称和头文件的路径。现在编译时,它应该为您的页面使用您的类的实例,包括您对isComplete()
的覆盖。
答案 1 :(得分:1)
我不确定您要问的是什么,但如果要禁用向导的“下一步”按钮,则从isComplete()返回false。
如果要启用“下一步”按钮,则发出completeChanged()信号并返回true。
默认实现已经返回true。所以你甚至可能不需要覆盖这个方法。
我希望这会有所帮助。