QT对话框设计
软件和系统:QTcreator5.7,win8.1
1. 首先新建项目,选择application中的Qt widgets application。

2. 创建类Dialog,选择QDialog作为基类。

3. 由于对话框简单,可以通过代码实现,而不用ui。
4. 首先了解以下几个控件:
(1) QCheckBox
一个选项按钮,可以选择性开启或者关闭,用于指导一个操作的的行为。每当其被选择或者被清除就会发送一个stateChanged()信号。也可以通过isChecked()来检测其状态。
(2) Qlabel
在对话框中呈现出文本或者图片。
(3) QLineEdit
用户可以输入一行文本,该文本可以被粘贴、复制等。当内容改变时,发出textChanged()信号。
(4) QPushButton
对话框中的按钮,执行命令。每当按下就会发送clicked()信号。
5. 在头文件中声明以上控件类:

这些控件类在Qt4中包含在Gtui头文件中,在Qt5中包含在QtWidgets中,定义这些类本可以直接包含头文件QtWidgets,但是在已经包含了较大头文件的文件中再包含那么大头文件,不是一种好的编程风格。
6. 定义信号和槽。

Q_OBJECT是QT中宏定义,如果需要定义槽、信号就需要包含这个宏。信号和槽是QT创建的,其独立于C++,其编译由moc来完成。
这里定义的两个信号findNext和findPrevious是QT中函数,用于进行文本查找。
槽是定义的用户自定义的。
7. 生成对话框控件。

&代表快捷选项,&后边字母可以通过Alt+字母来进行选择。
8. 链接信号和槽。

当lineEdit中文本变化,就会引发enebleFindButton();findButton按钮按下就会触发findClicked()信号;closeButton按钮按下就会关闭对话框。
9. 控件排列。

QHBoxLayout、QVBoxLayout用于排布控件,前者横向排列后者纵向排列,通过这两个类可以实现控件分布。
10. 最终结果:

QT对话框设计的更多相关文章
- MATLAB对话框设计[转]
Matlab之对话框 对话框设计:在图形用户界面程序设计中,对话框是重要的信息显示和获取输入数据的用户界面对象. 1.公共对话框: 公共对话框是利用windows资源的对话框,包括文件打开.文件保存. ...
- 使用 PySide2 开发 Maya 插件系列一:QT Designer 设计GUI, pyside-uic 把 .ui 文件转为 .py 文件
使用 PySide2 开发 Maya 插件系列一:QT Designer 设计GUI, pyside-uic 把 .ui 文件转为 .py 文件 前期准备: 安装 python:https://www ...
- Qt Designer设计 UI 文件并调用
本文介绍的是Qt Designer设计 UI 文件并调用,在坛子里逛了一圈,关于UI方面的好像不怎多,本篇给大家分享一下. AD: 2013云计算架构师峰会超低价抢票中 Qt Designer设计 U ...
- pyqt5对用qt designer设计的窗体实现弹出子窗口的示例
pyqt5对用qt designer设计的窗体实现弹出子窗口的示例 脚本专栏 python 1. 用qt designer编写主窗体,窗体类型是MainWindow,空白窗口上一个按钮.并转换成mai ...
- pyqt5通过qt designer 设计方式连接多个UI图形界面
当我们通过pyqt开发时,eric6为我们提供了一个方便的工具:图形化的绘制UI工具--qtdesigner.我们可以通过它开发多个UI,然后利用信号-槽工具,将功能代码附着在上面.也可以将多个界面连 ...
- QT Desinger设计窗体应用程序框架
目录 目录 前言 系统软件 QT Designer Using QT Designer Open QTDesigner Tool Widget Box QT Designer的布局 属性栏 示例 i ...
- QGis、Qt对话框上的OK、Open、Cancel、Help等英文翻译
成功编译qgis,启动程序发现对话框上的OK.Open.Cancel.Help等依然是英文字段,然后查找源码看这些字段是否都添加到了语言翻译包中: 最后发现这些按钮都是qt的QTGui4库中的QDia ...
- QT 对话框一
标准文件对话框 其函数形式如下:: QString QFileDialog::getOpenFileName ( QWidget * parent=, const QString &capti ...
- Qt 对话框显示控制按钮
在对话框窗体构造函数加入 SystemDialog::SystemDialog(QWidget *parent) : QDialog(parent), ui(new Ui::SystemDialog) ...
随机推荐
- sublineText
https://github.com/thinkpixellab/flatland { "color_scheme": "Packages/Theme - Flatlan ...
- hdu1506
today, my cc can't make '__in64' it's so bad!!! i don't know why #include <stdio.h> //long lon ...
- 通过string型类名实例化一个类
DataTable dt = new DBHelper().getIndexInfo(code_id); DataRow row = dt.Rows[0]; string dllName = row[ ...
- 面向初学者的 Windows 10 UWP 应用开发
眼看 Windows 10 for Mobile 正式版也快要推送了,就先挖个坑吧,原文视频链接为:Windows 10 development for absolute beginners,以下博客 ...
- Jetson TK1 Restore 步骤
Jetson TK1 Restore 步骤 下载驱动包和文件系统包: 1:驱动包 2:文件系统 具体参见文档:http://download.csdn.net/detail/xiabodan/7 ...
- C# 中解决页面刷新后字体等变大问题
来源:http://blog.csdn.net/wcsjsdn/article/details/5109605 我们在.net开发中时常会遇到一个问题,那就是,当点击某个按钮后,调用js语句,当点击& ...
- php中的占位符
1.?这种形式传值,注意是数组! 2.:name的形式.
- MHA 日常管理
一.MHA的主要脚本 1.manager端 masterha_check_ssh 检查MHA的SSH配置状况 masterha_check_repl 检查MySQL复制状况 masterha_mang ...
- Hadoop1.x与2.x安装笔记
Hadoop1.x与2.x安装笔记 Email: chujiaqiang229@163.com 2015-05-09 Hadoop 1.x 安装 Hadoop1.x 集群规划 No 名称 内容 备注 ...
- JS中的函数,Array对象,for-in语句,with语句,自定义对象,Prototype
一)函数 A)JS中的函数的定义格式: function add(a,b) { var sum = a+b; document.write("两个数的和是:" + sum); // ...