C++ (Qt)void UiDialog::accept(){} void UiDialog::reject(){} int UiDialog::exec(){ return ui->exec();} UiDialog::UiDialog(QString FormName, QWidget *parent) : QObject(parent){ QUiLoader loader; QFile uiFile(FormName ); uiFile.open(QIODevice::ReadOnly); ui = (QDialog*)loader.load(&uiFile, parent); uiFile.close(); if( ui ) { connect( ui, SIGNAL(accepted()), this, SLOT(accept()) ); connect( ui, SIGNAL(rejected()), this, SLOT(reject()) ); }}
C++ (Qt)UiDialog::UiDialog(QString FormName, QWidget *parent) : QDialog(parent){ layout = new QGridLayout(...); setLayout(layout); QUiLoader loader; QFile uiFile(FormName ); uiFile.open(QIODevice::ReadOnly); ui = (QWidget *)loader.load(&uiFile, this); uiFile.close(); layout->addWidget(ui);}
ui = (QWidget *)loader.load(&uiFile, this);
UiDialog::UiDialog(QString FormName, QWidget *parent) : QDialog(parent){ setAttribute(Qt::WA_DeleteOnClose); setWindowFlags(windowFlags() ^ Qt::WindowContextHelpButtonHint); owner = 0; QLayout* layout = new QVBoxLayout(this); setLayout(layout); QUiLoader loader; QFile uiFile(FormName ); uiFile.open(QIODevice::ReadOnly); ui = loader.load(&uiFile, parent); uiFile.close(); layout->addWidget(ui); this->setMinimumWidth(ui->width()); this->setMinimumHeight(ui->height()+this->frameSize().height()-this->height()); ui->setVisible(true); connect( ui, SIGNAL(accepted()), this, SLOT(slotAccepted()) ); connect( ui, SIGNAL(rejected()), this, SLOT(slotRejected()) );}void UiDialog::slotAccepted(){ isValid = true; emit receiveSignal("OK"); if( isValid ) { QDialog::accept(); } else { ui->setVisible(true); }}void UiDialog::slotRejected(){ isValid = true; emit receiveSignal("Cancel"); if( isValid ) { QDialog::reject(); } else { ui->setVisible(true); }}