static bool execInputDialog_Int( const char *title, const char *label, int minVal, int maxVal, int &ret) { QInputDialog dlg; dlg.setWindowTitle(title); dlg.setLabelText(label); dlg.setOkButtonText("确定"); dlg.setCancelButtonText("取消"); dlg.setInputMode(QInputDialog::IntInput); dlg.setIntRange(minVal, maxVal); dlg.setIntValue(ret); if (dlg.exec() == QDialog::Accepted) { ret = dlg.intValue(); return true; } return false; }
void LightFader::configureClicked() { switch (m_operatingMode) { case SINGLE_CHANNEL: { QInputDialog *dlg = new QInputDialog(this); dlg->setInputMode(QInputDialog::IntInput); dlg->setIntMaximum(255); dlg->setIntMinimum(0); dlg->setIntValue(m_values[0]); dlg->setOption(QInputDialog::NoButtons, true); dlg->setWindowTitle(ui.faderName->text()); dlg->setLabelText(tr("DMX Value:")); connect(dlg, &QInputDialog::intValueChanged, this, &LightFader::setValueFromDialog); dlg->exec(); break; } case EUROLITE_PMD_8: EuroLitePMD8Configuration *dlg = new EuroLitePMD8Configuration(this); dlg->exec(); break; } }