软件和系统: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对话框设计的更多相关文章

  1. MATLAB对话框设计[转]

    Matlab之对话框 对话框设计:在图形用户界面程序设计中,对话框是重要的信息显示和获取输入数据的用户界面对象. 1.公共对话框: 公共对话框是利用windows资源的对话框,包括文件打开.文件保存. ...

  2. 使用 PySide2 开发 Maya 插件系列一:QT Designer 设计GUI, pyside-uic 把 .ui 文件转为 .py 文件

    使用 PySide2 开发 Maya 插件系列一:QT Designer 设计GUI, pyside-uic 把 .ui 文件转为 .py 文件 前期准备: 安装 python:https://www ...

  3. Qt Designer设计 UI 文件并调用

    本文介绍的是Qt Designer设计 UI 文件并调用,在坛子里逛了一圈,关于UI方面的好像不怎多,本篇给大家分享一下. AD: 2013云计算架构师峰会超低价抢票中 Qt Designer设计 U ...

  4. pyqt5对用qt designer设计的窗体实现弹出子窗口的示例

    pyqt5对用qt designer设计的窗体实现弹出子窗口的示例 脚本专栏 python 1. 用qt designer编写主窗体,窗体类型是MainWindow,空白窗口上一个按钮.并转换成mai ...

  5. pyqt5通过qt designer 设计方式连接多个UI图形界面

    当我们通过pyqt开发时,eric6为我们提供了一个方便的工具:图形化的绘制UI工具--qtdesigner.我们可以通过它开发多个UI,然后利用信号-槽工具,将功能代码附着在上面.也可以将多个界面连 ...

  6. QT Desinger设计窗体应用程序框架

    目录 目录 前言 系统软件 QT Designer Using QT Designer Open QTDesigner Tool Widget Box QT Designer的布局 属性栏 示例 i ...

  7. QGis、Qt对话框上的OK、Open、Cancel、Help等英文翻译

    成功编译qgis,启动程序发现对话框上的OK.Open.Cancel.Help等依然是英文字段,然后查找源码看这些字段是否都添加到了语言翻译包中: 最后发现这些按钮都是qt的QTGui4库中的QDia ...

  8. QT 对话框一

    标准文件对话框 其函数形式如下:: QString QFileDialog::getOpenFileName ( QWidget * parent=, const QString &capti ...

  9. Qt 对话框显示控制按钮

    在对话框窗体构造函数加入 SystemDialog::SystemDialog(QWidget *parent) : QDialog(parent), ui(new Ui::SystemDialog) ...

随机推荐

  1. Eclipse 安装Groovy插件

    摘自: http://blog.csdn.net/boonya/article/details/45399901 步骤一: 下载eclipse4.3.0,地址:http://www.eclipse.o ...

  2. poj3349 哈希

    这题目写了一上午,一直错,然后自己测试数据还都对.为什么呢,为什么呢,后来我才发现代码里有一行free(tmp)...在55行那里... #include <stdio.h> #inclu ...

  3. c#自定义进度条

    有些时候我们做的程序需要进度条,而vs提供的控件不是我们想要的.先看效果图:       进度条闪烁动画,当然背景可设为Transparent 之前想手绘进度条线条的,结果控件运行时会闪烁,所以直接用 ...

  4. Knockout.Js官网学习(visible绑定)

    前言 让visible绑定到DOM元素上,使得该元素的hidden或visible取决于绑定的值. 简单的绑定 首先还是先定义一个ViewModel var AppViewModel = { shou ...

  5. ThinkPHP之中的getField、Find、select、返回数据类型详解(ThinkPHP之中所有数据读取了)

    小李子:用于演示作用的数据库表:customers 官方解读: “ 读取数据集其实就是获取数据表中的多行记录(以及关联数据),使用select方法 ” $customers=D('customers' ...

  6. seeting菜单界面形成--优化

    本文是上一篇文章的优化版: 上文链接地址:http://www.cnblogs.com/zzw1994/p/5016864.html 上文中有很多方法都是过时,并且效率不是很高,主要对JAVA代码进行 ...

  7. JDBC基础一

    JDBC:java database connectivity SUN公司提供的一套操作数据库的标准规范. JDBC与数据库驱动的关系:接口与实现的关系. JDBC规范(掌握四个核心对象): Driv ...

  8. [.ashx檔?泛型处理例程?]基础入门#2....FileUpload上传前,预览图片(两种作法--ashx与JavaScript)

    原文出處  http://www.dotblogs.com.tw/mis2000lab/archive/2013/08/20/ashx_beginner_02_fileupload_picture_p ...

  9. python 字符串格式化 (%操作符)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在许多编程语言中都包含有格式化字符串的功能,比如C和Fortran语言中的格式化输 ...

  10. python os模块使用方法

    os.path模块 basename('文件路径')    去掉目录路径,返回fname文件名  1 import os 2 os.path.basename('/Volumes/1.mp4')   ...