文章目录
- qt窗口--02
- QMessageBox
- QColorDialog
- QFileDialog
- QFontDialog
- QInputDialog、
- 结语
很高兴和大家见面,给生活加点impetus!!开启今天的编程之路!!
作者:٩( ‘ω’ )و260
我的专栏:qt,Linux,C++进阶,C++初阶,数据结构初阶,题海探骊,c语言
欢迎点赞,关注!!
qt窗口–02
我们上节介绍了对话框的基础类型,该文主要介绍对话框的扩展类型。即生活中常用的对话框qt其实已经内置了~
QMessageBox
消息对话框,在生活中一般会弹出问题,信息,报错等等~
自定义对话框有两种方式,一种是动态方式,一种是静态方式,我们先来看第一种方式:
虽然说qt的QMessageBox内置了按钮,同时,因为这个按钮是QMessageBox生成的,所以无法去建立信号和槽的连接。
先来看结果:
其实,我们这里也是可以写QMessageBox->exec(),此时程序就会在这一行代码这里给断掉,直到将该exec显示的控件给关闭,才会继续向下运行代码,同时,exec这种方式不仅是模态,还能够获取当前用户点击了什么东西:
为什么是整形呢?因为内置的按钮是可以使用整形来表示的。
我们来看代码,可以来获取当前用户点击了什么按钮:
我们再来看结果:
此时就会有对应的打印日志~
上面我们都是通过动态的函数创建,随后我们再来对动态new出来的QMessageBox进行操作,我们使用静态创建的话,不用使用new,也能够对该对话框进行操作。
来看代码:
因为该函数是静态函数,所以都不用进行销毁了。
结果和动态创建的结果是相同的,这里就不再演示了。
QColorDialog
颜色对话框,其实内置了调色板。
在前面学习控件的时候,我们学过stylesheet控件属性,在那个部分我们讲解过颜色的表示形式,这里我们顺便复习一下:
这里我们依然是使用静态函数的创建方式,来创建这个颜色对话框,同时,我们使用颜色对话框来调整mainWindow窗口的颜色。
来看代码:
我们先来看结果:
此时我们用户设置的值就能够通过返回值给到我们用来接收的color变量,我们再来通过这个变量设置stylesheet给到mainWindow即可:
首先我们需要明白stylesheet需要传递一个QString过去,所以我们需要遵循qss设置颜色的规则:
接下来我们直接来看代码:
这里我们同样可以使用sprintf字符串拼接函数,实现效果:
这样我们就实现了这种效果。
QFileDialog
该对话框主要是用来通过打开文件/保存文件来获取文件路径。
注意:不是真的保存了文件,还需要进行其他的有关文件操作的知识,这里我们后面再说
我们来使用文件对话框来获取文件的路径,我们同样是使用静态的创建的方式:
我们直接来看结果:
其他的涉及文件对话框的内容我们放到文件操作的章节再来去谈
QFontDialog
接下来我们仍然是使用静态的方式来创建字体对话框。
我们直接来看代码:
这个函数中的bool值是用来干什么的呢?
其实就是利用bool值确定用户点击的什么,当用户点击ok或者cancel,对应的bool值就会被修改:
我们来看效果:
用户对于字体的设置,就会通过getFont函数返回值返回给我们设置的font变量~
通过我们返回的font对象,就可以完成我们对控件字体的修改,我们来看示例代码,同时给出结果:
QInputDialog、
输入对话框,还是使用静态创建的方式,同时我们设置变量接收用户输入的结果,这里有三种静态创建的方式,分别是getInt,getDouble,getItem,前两个其实都好理解,即输入整形和浮点型,第三种是输入条项,即字符串,来看代码:
QStringList其实就是类似于c++stl 库中的vector或List,有些接口和他们是相同的。
来看结果:
结语
今天的内容就分享到这里,感谢大家的认真倾听,不足之处欢迎大家留言指出,感谢大家支持!