#include "startsetdialog.h" #include "ui_startsetdialog.h" StartSetDialog::StartSetDialog(QWidget *parent) : QDialog(parent), ui(new Ui::StartSetDialog) { ui->setupUi(this); setWindowModality(Qt::ApplicationModal); setWindowFlags(Qt::CustomizeWindowHint | Qt::WindowCloseButtonHint); m_startPoint = 0; m_length = 0; //整数 QIntValidator *Validator = new QIntValidator(this); ui->lineEdit_start->setValidator(Validator); } StartSetDialog::~StartSetDialog() { delete ui; } int StartSetDialog::exec(QString title, QString text,QString length) { ui->lineEdit_start->setText(text); ui->label_range->setText("(0-"+length+")"); m_length = length.toInt(); m_startPoint = text.toInt(); this->setWindowTitle(title); return QDialog::exec(); } void StartSetDialog::on_pushButton_ok_clicked() { m_startPoint = ui->lineEdit_start->text().toInt(); if(m_startPoint < 0 || m_startPoint >= m_length) { QMessageBox::warning(this, tr("Prompt"), tr("Unreasonable value input!"),//数值输入不合理 QMessageBox::Ok); return; } done(1); } void StartSetDialog::on_pushButton_cancel_clicked() { done(0); }