モーダルダイアログを作る
QDialogクラスを継承し、accept(), reject() を発生させます。uiには ButtonBoxを貼り付けておきます。
private slots: void onAccept(); void onReject();
ソース部分です。ButtonBoxで発生されるSIGNALを受け取ります。
// コンストラクタ ui->setupUi(this); connect( ui->buttonBox, SIGNAL(accepted()), this, SLOT(onAccept()) ); connect( ui->buttonBox, SIGNAL(rejected()), this, SLOT(onReject()) );
そしてSLOTでの処理。
void DialoHoge::onAccept() { accept(); } void DialogHoge::onReject() { reject(); }
最後に、このダイアログを呼び出す部分です。
DialogHoge* dialog = new DialogHoge( this ); if (dialog->exec() == QDialog::Accepted) { } delete dialog;