我是Qt的新手。 我創建一個QWizard並添加一些QWizardPage。現在,除了後退按鈕之外,我還想通過其他方式在頁面之前回放,例如:某些sinal或某些功能。Qt WizardPage帶有一些明確的功能
在細節,我想在第2頁操作某些funtion,展現在這一個消息框,並提供的choise回到第1
我是Qt的新手。 我創建一個QWizard並添加一些QWizardPage。現在,除了後退按鈕之外,我還想通過其他方式在頁面之前回放,例如:某些sinal或某些功能。Qt WizardPage帶有一些明確的功能
在細節,我想在第2頁操作某些funtion,展現在這一個消息框,並提供的choise回到第1
的QWizard
有back
(也next
和restart
如果插槽需要)
可以手動調用槽等的函數調用
wizard->back();
或將其連接到一個自定義的信號
connect(someClass,&class::mysignal,wizard,&QWizard::back);
當你想要一個更復雜的行爲,也許你應該考慮建立一個non-linear wizard
的Qt對如何做到這一點,一般的指導。
基本上它是重寫QWizard::nextId()
,當嚮導想要確定接下來跳轉的位置時,將調用此函數。
雖然您不能直接跳轉到某個頁面。你必須調用back
/next
/restart
這可以通過這雖然可以workarounded:
while(wizard->currentId() != <desiredID>)
{
wizard->back();
}
要知道,雖然你不進入無限循環,如果你已經在頁面之前。去頁1 restart
將是一個更好的選擇。或者提到一個非線性向導。
我嘗試在我的嚮導頁中調用wizard-> back(),嚮導是它添加到的嚮導的關鍵點。但它不起作用。 'void NiuFPage :: on_pushButton_clicked() { parentwizardpoint-> back(); }' –
現在沒問題。我之前將錯誤的功能連接到點擊的信號。 非常感謝您的詳細信息 –
http://doc.qt.io/qt-5/qwizard.html#back? – Hayt
非常感謝。你知道如何去指定頁面(例如:第5頁) –