Qt:对话框

Qt对话框分为两种。一种是模态对话框,即弹出此对话框时,用户不可以操作此程序其他窗口。 另一种是非模态对话框,弹出此对话框时,用户可以操作此程序的其他窗口。

定义一个对话框很简单,在这里我们顺便设置好它的父亲

QDialog* dig = new QDialog(this);

模态对话框

一句话

dig->exec();

似乎是这样可以中断main 函数中a 的消息循环,实现无法操作的效果。

非模态对话框

最早我们尝试显示按钮控件的时候其实就学会了。
当时我们照葫芦画瓢,按照窗口的方式实现了一个按钮。当时就是用了show()方法

dig->show();

不同用途的其他对话框

根据用途Qt提供了很多对话框,这些对话框属于QMessageBox类,都是静态的,也就是说,我们并不需要为了这些对话框创建对象。

这些对话框参数基本类似

父亲
题目
文本
Qt定义的标准按钮
默认回车关联按钮

错误对话框

形如这种对话框
在这里插入图片描述
创建方式

QMessageBox::critical(this , "Error" , "The operation completed successfully." , QMessageBox::OK , QMessageBox::OK);

第四个参数是Qt定义的按钮 。第五个参数是你按回车默认执行的按钮,你刚运行程序时有亮蓝色标记。

提问对话框

int ret = QMessageBox::question(this , "ques" , "continue?" , QMessageBox::Ok
                              |QMessageBox::Cancel , QMessageBox::Cancel);

对话框返回的是QMessageBox类型,是你点击的按钮。
实际上 返回的是数字 ,Qt定义的按钮有不同的数值,通过比对数值就知道点的那一个按钮。
如下面

if(ret == QMessageBox::Cancel)
{
	……
}

消息对话框

没有什么新奇的东西

QMessageBox::information(this , "info" , "information");

功能性对话框

选择文件对话框

打开一个类似下图的对话框供用户选择文件
在这里插入图片描述

QString file = QFileDialog::getOpenFileName(this , "title" , "text" );

返回string, 文件路径

我们可以过滤文件,使用户只能选取特定格式的文件

只需加上一个参数 ,即需要的后缀名

QString file = QFileDialog::getOpenFileName(this , "title" , "text" , "(*.txt)");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值