当前位置:首页 » 《随便一记》 » 正文

【QT】Qt窗口(下)

13 人参与  2024年11月02日 11:21  分类 : 《随便一记》  评论

点击全文阅读


在这里插入图片描述

个人主页~

Qt窗口(下)~


Qt窗口

五、对话框2、Qt内置对话框(1)Message Box(2)QColorDialog(3)QFileDialog(4)QFontDialog(5)QInputDialog

五、对话框

2、Qt内置对话框

Qt内置的所有对话框全部继承自QDialog

(1)Message Box

消息对话框是非常常见常用的界面元素,主要用于为用户提示重要信息,强制用户进行选择操作
QMessageBox类中定义了静态成员函数有四个

函数作用
Question用于正常操作过程中的提问
Information用于报告正常运行信息
Warning用于报告非关键错误
Critical用于报告严重错误
MainWindow::MainWindow(QWidget *parent)    : QMainWindow(parent)    , ui(new Ui::MainWindow){    ui->setupUi(this);    //创建一个按钮和消息对话框,按钮用来呼唤对话框    QPushButton* btn = new QPushButton("消息对话框",this);    QMessageBox* mb = new QMessageBox(this);//设置对话框基本信息    mb->setWindowTitle("警告");//标题    mb->setText("错误信息");//文本内容    mb->setIcon(QMessageBox::Question);//图标设置    mb->setStandardButtons(QMessageBox::Ok|QMessageBox::No|QMessageBox::Help);    //按钮设置    connect(btn,&QPushButton::clicked,[=]()    {        mb->show();    });}

messagedialog

(2)QColorDialog

颜色对话框功能就是让用户选择颜色

方法说明
QColorDialog(QWidget* parent = nullptr)创建对象的同时设置父对象
QColorDialog(const QColor& initial,QWidget* parent = nullptr)创建对象的同时通过QColor对象设置默认颜色和父对象
void setCurrentColor(const QColor& color)设置当前颜色对话框
QColor currentColor() const获取当前颜色对话框
QColor getColor(const QColor& initial = Qt::white, QWidget* parent = nullptr, const QString& title = QString(), QColorDialog::ColorDialogOptions options = ColorDialogOptions())打开颜色选择对话框,并返回一个QColor对象
void open((QObject* receiver,constchar* member)打开颜色对话框

其中倒数第二个函数,initial是设置默认颜色,parent是设置父对象,title是设置对话框标题,options是设置选项

MainWindow::MainWindow(QWidget *parent)    : QMainWindow(parent)    , ui(new Ui::MainWindow){    ui->setupUi(this);//创建按钮和颜色对话框    QPushButton* btn = new QPushButton("颜色对话框",this);    QColorDialog* cd = new QColorDialog(this);//连接两者    connect(btn,&QPushButton::clicked,[=]()    {        cd->setCurrentColor(QColor(100,100,100));        cd->open();    });}

colordialog

(3)QFileDialog

方法说明
QString getOpenFileName(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options())打开一个文件
QStringList getOpenFileNames(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr,QFileDialog::Options options = Options())打开多个文件
QString getSaveFileName(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options())保存文件

parent:父亲
caption:对话框标题
dir:默认打开路径
filter:文件过滤器

MainWindow::MainWindow(QWidget *parent)    : QMainWindow(parent)    , ui(new Ui::MainWindow){    ui->setupUi(this);    QPushButton* btn = new QPushButton("按钮",this);    QFileDialog* fd = new QFileDialog(this);    connect(btn,&QPushButton::clicked,[=]()    {        QString str = fd->getOpenFileName(this,        "文件","C://Users//14725//Desktop","*.jpg");    });}

在这里插入图片描述

(4)QFontDialog

**MainWindow::MainWindow(QWidget *parent)    : QMainWindow(parent)    , ui(new Ui::MainWindow){    ui->setupUi(this);    QPushButton* btn = new QPushButton("字体对话框",this);    connect(btn,&QPushButton::clicked,[=]()    {       bool flag;       //getFont的第一个参数必须为bool类型       QFont font = QFontDialog::getFont(&flag,QFont("华文行楷",36));    });}

在这里插入图片描述

(5)QInputDialog

方法说明
double getDouble(QWidget* parent,const QString& title, const QString& label, double value =0,doublemin=-2147483647,doublemax=2147483647,intdecimals=1,bool* ok=nullptr, Qt::WindowFlags flags = Qt::WindowFlags());双精度浮点型输入数据对话框
int getInt (QWidget* parent, const QString& title, const QString& label, int value = 0, int min=-2147483647,intmax=2147483647,intstep=1,bool* ok=nullptr,Qt::WindowFlags flags = Qt::WindowFlags());整型输入数据对话框
QString getItem (QWidget* parent, const QString& title, const QString& label, const QStringList& items, int current = 0, bool editable = true, bool* ok =nullptr, Qt::WindowFlags flags = Qt::WindowFlags(), Qt::InputMethodHints inputMethodHints = Qt::ImhNone) ;选择条目型输入数据框

parent:父亲
title:对话框标题
label:对话框标签
items:可供选择的条目

MainWindow::MainWindow(QWidget *parent)    : QMainWindow(parent)    , ui(new Ui::MainWindow){    ui->setupUi(this);    QPushButton* btn = new QPushButton("输入对话框",this);    QInputDialog* id = new QInputDialog(this);    connect(btn,&QPushButton::clicked,[=]()    {    //参数2是输入对话框名,参数3是输入对话框内容        int i = id->getInt(this,"输入框","int型");    });}

在这里插入图片描述


今日分享就到这了~

在这里插入图片描述


点击全文阅读


本文链接:http://zhangshiyu.com/post/181365.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 祖母寿宴,侯府冒牌嫡女被打脸了(沈屿安秦秀婉)阅读 -
  • 《雕花锦年,昭都旧梦》(裴辞鹤昭都)完结版小说全文免费阅读_最新热门小说《雕花锦年,昭都旧梦》(裴辞鹤昭都) -
  • 郊区41号(许洛竹王云云)完整版免费阅读_最新全本小说郊区41号(许洛竹王云云) -
  • 负我情深几许(白诗茵陆司宴)完结版小说阅读_最热门小说排行榜负我情深几许白诗茵陆司宴 -
  • 九胞胎孕妇赖上我萱萱蓉蓉免费阅读全文_免费小说在线看九胞胎孕妇赖上我萱萱蓉蓉 -
  • 为保白月光,侯爷拿我抵了债(谢景安花田)小说完结版_完结版小说全文免费阅读为保白月光,侯爷拿我抵了债谢景安花田 -
  • 陆望程映川上官硕《我的阿爹是带攻略系统的替身》最新章节阅读_(我的阿爹是带攻略系统的替身)全章节免费在线阅读陆望程映川上官硕
  • 郑雅琴魏旭明免费阅读_郑雅琴魏旭明小说全文阅读笔趣阁
  • 头条热门小说《乔书意贺宴临(乔书意贺宴临)》乔书意贺宴临(全集完整小说大结局)全文阅读笔趣阁
  • 完结好看小说跨年夜,老婆初恋送儿子故意出车祸_沈月柔林瀚枫完结的小说免费阅读推荐
  • 热推《郑雅琴魏旭明》郑雅琴魏旭明~小说全文阅读~完本【已完结】笔趣阁
  • 《你的遗憾与我无关》宋怀川冯洛洛无弹窗小说免费阅读_免费小说大全《你的遗憾与我无关》宋怀川冯洛洛 -

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1