软件和系统: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. 008sudo用户管理

    1.Sudo是Unix/Linux平台上一个非常有用的工具,它允许系统管理员分配给普通用户一些合理的权利,让它们执行一些只有超级用户或其他特许用户才能完成的任务(主要体现为命令),比如,运行一些像mo ...

  2. CuteFTP 9.0 上传文件时,中文文件名乱码

    解决办法如图: 1.右键--->属性 2.选项---->档案名称编  选择ascⅡ

  3. phalcon框架学习之router

    router定义 在DI中注册router的方法: $di->set('router', function(){ $router = new Phalcon\Mvc\Router(); $rou ...

  4. Windows2003 IIS开启Gzip网页压缩

    1.单击"开始"-"管理工具"-"Internet 信息服务(IIS)管理器",打开IIS管理器:2.在 "IIS 管理器&quo ...

  5. c#中执行多条sql语句【ORA-00911: 无效字符】

    问题描述: 在plsql里执行多条sql语句的时候,使用“,”(逗号)分隔,测试可以执行多条,而在C#执行多条sql语句的时候[ORA-00911: 无效字符]. 有时我们需要一次性执行多条sql语句 ...

  6. js动态显示可输入字数并提示还可以输入的字数

    动态显示可输入的字数提示还可以输入的字数. 代码: <input name="title" type="text" size="50" ...

  7. mssql 下删除 default 值的Sql写法

    FROM Sys.default_constraints a JOIN sys.columns b ON a.parent_object_id = b.object_id AND a.parent_c ...

  8. API - .addBack()

    从jQuery官网上提供的Example来看,这个API的意思是: 1   先圈定一个范围,[A] $( "div.after-addback" ) 2 再用find过滤一出一个更 ...

  9. NuGet 的使用

     install-package entityframework//Enable-Migrations -ContextTypeName College.Models.CollegeEntities  ...

  10. xtrabackup之Innobackupex全备恢复

    一.当前环境 [mysql@hadoop1 ~]$ mysql --defaults-/my.cnf -uroot -p123456 -P3306 mysql> show variables l ...