2012-02-01 86 views
2

在Qt Designer中我創建了一個與確定,取消QDialogButtonBox一個對話框,並在其「還原爲默認值」按鈕。過了一段時間,但我想通了,我在執行文件中的信號/插槽如何設置:如何處理QDialogBu​​ttonBox RestoreDefaults按鈕

QPushButton* resetButton = m_ui.buttonBox->button(QDialogButtonBox::RestoreDefaults); 
connect(resetButton, SIGNAL(clicked()), this, SLOT(resetDefaultsPressed())); 

我的問題是:有沒有一種方法來設置信號/在QtDesigner插槽像您可以用確定和取消按鈕?我一直無法找到一個名爲RestoreDefaults或類似的信號......我使用的方法,但如果所有信號/插槽設置都在uic生成的.h文件中,它將會很好。

回答

1

Qt Designer只能處理類中聲明的信號。

但是您可以編寫一個從QDialogButtonBox派生的新類,使用信號clicked來接收哪個按鈕角色已被觸發,併發出新的信號。

然後你可以在設計器中將你的QDialogButtonBox升級到這個新類,你必須爲每個UI文件手動添加信號(左鍵單擊你的升級小部件然後「Change signal/slots ..」 。「),或者編寫一個設計器插件以讓您的自定義類出現在設計器窗口小部件列表中(有關詳細信息,請參見that other answer)。

相關問題