Qt学习——基本对话框Q*Dialog类

来源:互联网 发布:弱视网络训练 编辑:程序博客网 时间:2024/05/16 01:45

常用的对话框:

QFileDialog,QColorDialog,QFontDialog,QInputDialog,QMessageDialog以及自定义对话框。


这里只做了输入对话框的,其他类似。


 


这次使用了ui设计界面设计的Dialog,没有使用纯代码。所以只写相应的槽函数即可

源文件:

#include "dialog.h"#include "ui_dialog.h"#include <QInputDialog>#include <QStringList>#include <QString>Dialog::Dialog(QWidget *parent) :    QDialog(parent),    ui(new Ui::Dialog){    ui->setupUi(this);}Dialog::~Dialog(){    delete ui;}void Dialog::on_nameBtn_clicked(){    bool ok;    QString name=QInputDialog::getText(this,tr("标准输入对话框"),tr("请输入姓名:"),                                       QLineEdit::Normal,ui->name->text(),&ok);    if(ok&&!name.isEmpty())        ui->name->setText(name);}void Dialog::on_sexBtn_clicked(){    QStringList SexList;//    SexList<<tr("男")<<tr("女");    bool ok;    QString SexItem=QInputDialog::getItem(this,tr("标准条目选择对话框"),tr("请选择性别:"),                                          SexList,0,false,&ok);    if(ok&&!SexItem.isEmpty())        ui->sex->setText(SexItem);}void Dialog::on_ageBtn_clicked(){    bool ok;    int ageInt=QInputDialog::getInt(this,tr("标准整数输入对话框"),tr("请输入年龄:"),                                 ui->age->text().toInt(&ok),1,200,1,&ok);    if(ok)        ui->age->setText(QString(tr("%1")).arg(ageInt));}void Dialog::on_gradeBtn_clicked(){    bool ok;    double score=QInputDialog::getDouble(this,tr("标准浮点数输入对话框"),tr("请输入成绩:"),                                 ui->grade->text().toDouble(&ok),1,100,1,&ok);    if(ok)        ui->grade->setText(QString(tr("%1")).arg(score));}



原创粉丝点击