QT 对话框一
标准文件对话框
其函数形式如下::
QString QFileDialog::getOpenFileName
(
QWidget * parent=,
const QString &caption=QString(),
const QString &dir=QString(),
const QString &filter=QString(),
QString *selectFiler=,//用户选择的过滤器通过此参数返回
Option option=//选择显示文件名的格式,默认是同时显示目录和文件名
)
void Widget::btn_click()
{
/*getOpenFileName()打开的窗口是模式窗口*/
/*不含参数*/
//QString s=QFileDialog::getOpenFileName();
/*含参数
* 第一个参数是其父窗口的指针
* 第二个参数是打开窗口的名字
* 第三个参数dir,是对话框显示时默认打开的目录,
* "." 代表程序运行目录,"/" 代表当前盘符的根目录(Windows,Linux下/就是根目录了),
* 也可以是平台相关的,比如"C:\\"等;
* 例如我想打开程序运行目录下的Data文件夹作为默认打开路径,
* 这里应该写成"./Data/",若想有一个默认选中的文件,
* 则在目录后添加文件名即可:"./Data/teaser.graph"
* 第四个参数filter,是对话框的后缀名过滤器,
* 比如我们使用"Image Files(*.jpg *.png)"就让它只能显示后缀名是jpg或者png的文件。
* 如果需要使用多个过滤器,使用";;"(这里是分号)分割,
* 比如"JPEG Files(*.jpg);;PNG Files(*.png)";
* 第五个参数selectedFilter,是默认选择的过滤器;
* 第六个参数options,是对话框的一些参数设定,
* 比如只显示文件夹等等,它的取值是enum QFileDialog::Option,每个选项可以使用 | 运算组合起来。
*/
QString s=QFileDialog::getOpenFileName(this,"打开窗口的名称","/","C++ file(*.cpp);;C file(*.c);;Head file(*.h)");
/*用户点击了确定*/
if(!s.isEmpty())
{
this->setWindowTitle(s);
}
}
标准颜色对话框
其函数形式如下
getColor()函数是标准颜色对话框QColorDialog类的一个静态函数,该函数返回用户选择的颜色值,下面是getColor()函数形式:
QColor getColor
(
const QColor &initial=QT::whiye,
QWidget *parent=
)
void Widget::btn_click()
{
/*头文件需要包含QColor和QColorDialog*/
/*
* 第一个参数设置默认颜色,可选
* 第二个参数父窗口指针,可选
*/
QColor c=QColorDialog::getColor(Qt::blue,this);
}
标准字体对话框
其函数形式如下
getFont()函数是标准字体对话框QFontDialog类的一个静态函数,该函数返回用户所选择的字体,下面是getFont()函数形式
QFont getFont
(
bool *ok,
QWidget *parent=
)
void Widget::btn_click()
{
bool ok;
/*
* getFont()第一个参数必选*/
QFontDialog::getFont(&ok);
/*用户点击确定,返回true,用户点击取消,返回false*/
if(ok)
{
setWindowTitle("用户点击确定");
}else
{
setWindowTitle("用户点击取消");
}
}
QMessageBox类
question()函数
StandardButton QMessageBox::question
(
QWidget *parent,//消息框父窗口指针
const QString & title,//消息框标题栏
const QString & text,消息框文字提示信息
StandardButtons buttons=Ok,
StandardButton defaultButton=No
)
void Widget::btn_click()
{
/*
* 第三个参数是设置对话框里有几个按钮,
* 第四个参数是设置对话框默认选中的按钮是哪个*/
if(QMessageBox::question(this,"消息标题","消息内容实体",QMessageBox::Ok|QMessageBox::Cancel,QMessageBox::Ok)==QMessageBox::Ok)
{
/*用户点击了确定*/
setWindowTitle("OK");
}else
{
setWindowTitle("NO");
}
}
QT 对话框一的更多相关文章
- QGis、Qt对话框上的OK、Open、Cancel、Help等英文翻译
成功编译qgis,启动程序发现对话框上的OK.Open.Cancel.Help等依然是英文字段,然后查找源码看这些字段是否都添加到了语言翻译包中: 最后发现这些按钮都是qt的QTGui4库中的QDia ...
- Qt 对话框显示控制按钮
在对话框窗体构造函数加入 SystemDialog::SystemDialog(QWidget *parent) : QDialog(parent), ui(new Ui::SystemDialog) ...
- QT对话框模式与非模式
QT模态对话框及非模态对话框 非模态对话框(Modeless Dialog)的概念不是模态对话框就是在其没有被关闭之前,用户不能与同一个应用程序的其他窗口进行交互,直到该对话框关闭.对于在模态来显示对 ...
- QT对话框设计
软件和系统:QTcreator5.7,win8.1 1. 首先新建项目,选择application中的Qt widgets application. 2. 创建类Dialog,选择QDialog作为基 ...
- Qt对话框QDialog
QDialog是Qt中所有对话框窗口的基类 当QWidget无父组件的时候作为一个独立的窗口,有父组件的时候,将作为一个可见的部件嵌入到父组件里面. QDialog不能作为子部件嵌入到其他容器中 对话 ...
- Qt对话框_模态/非模态
对话框在Qt GUI应用程序中有着广泛的用途,对话框有模态.非模态两种情况. 对于参数选择的对话框,一般用模态对话框:对于显示或查看某些内容的对话框,一般用非模态对话框. 对话框类QDialog,官方 ...
- QT对话框中show和exec的区别
转自:http://hi.baidu.com/wangjuns8/blog/item/24b382460dd1c1338694737d.html QDialog的显示有两个函数show()和exec( ...
- 19.QT对话框(文件对话框,颜色对话框,字体框,自定义对话框)
文件对话框 #include<QFileDialog> //文件对话框 void Dialog::on_pushButton_clicked() { //定义显示文件的类型 窗口标题 可供 ...
- Qt对话框之二:模态、非模态、半模态对话框
一.模态对话框 模态对话框:阻塞同一应用程序中其它可视窗口输入的对话框.模态对话框有自己的事件循环,用户必须完成这个对话框中的交互操作,并且关闭了它之后才能访问应用程序中的其它任何窗口. 显示模态对话 ...
随机推荐
- Android 学习资料收集
收集整理这份资料灵感来自于 trip_to_iOS, 征得同意引用了该资料的开头描述 收集整理这份资料主要帮助初学者学习 Android 开发, 希望能快速帮助到他们快速入门, 找到适合自己学习资料, ...
- 如何正确并完全安装Visual Studio 2015企业版本?
http://blog.csdn.net/code_godfather/article/details/47381631 [简介] 常用网名: 猪头三 出生日期: 1981.XX.XX 个人网站: ...
- Android简单加密保护自有图片资源
现在大部分android应用的图片资源,被反编译后就可以直接拿来用,如果不想让自己的图片资源直接被反编译后使用,首先想到的应该是把图片加密.这里笔者抛砖引玉,草草写了一个对图片进行简单加密的方法,希望 ...
- git之三
1.status命令与diff命令 前面我们已经成功地添加并提交了一个readme.txt文件,修改readme.txt如下: echo "Git is a distributed vers ...
- 安卓普通类通过classloader访问资源文件
Android studio不知道怎么设置,才可以在生成APK时把一些文件打包进去. 但是不管怎么样,放在res文件夹下的东西是一定得打包的.所以把一些资源文件放在res/raw这个文件夹里是科学的. ...
- Cloud9:解决ThinkPHP在C9上运行时连接数据库时报错"No such file or directory"的问题
昨天尝试在c9上部署了一个ThinkPHP用于开发,但是当试图连接数据库时却出现了这样的问题.经过查找资料发现此问题是由于没有找到mysql.sock这个文件造成的(这个东西估计是mysql的连接线程 ...
- 海量IT资料 + 各种平台下的Oracle安装文件 + 公开课录像 + 各种视频教程资料
觉得老师的公开课讲的都挺好的,这里把我录的一些公开课视频分享给大家,都用的是<屏幕录像专家>来录制的,是lxe格式的,大家用这个软件来播放就可以了,后边的公开课录像文件也会慢慢添加进去的, ...
- hibernate和mybatis的区别
本文出自 alicejiyayun原创 第一章 Hibernate与MyBatis Hibernate 是当前最流行的O/R mapping框架,它出身于sf.NET,现在已经成为Jboss的 ...
- mysql IP转换函数
1.将字符串类型的实际IP转换成十进制数值型的 SELECT INET_ATON('209.207.224.40'); 执行结果:
- log4j 日志信息的引入(通用版)——解决项目运行过程中的日志信息
定义 log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件,甚至是套接口服务器.NT的事件记录器.UNIX Syslog守护进程 ...