使用Qt Designer开发的实现示例

 更新时间:2025年05月21日 09:27:20   作者:松松win  
本文主要介绍了使用Qt Designer开发的实现示例,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

Qt Designer 是属于 Qt Creator 的 一个功能而已,Qt Designer 也叫 UI 设计师或者 UI 设计器,这都是指的同一 个东西而已。

一、在ui文件添加一个按钮

1、新建一个项目

项目名为 02_designer_example

构建系统可选择 CMake , qmake, Qbs 对于 CMake 我们比较熟悉,用于生成 Makefile ,那么

qmake 与 Qbs 也同样道理, qmake 与 cmake 比较常用。我们需要选择 qmake 。

这里默认选择的基类为 QMainWindow 。在 Base class 一项中我们还可以看到还有 QWidget

和 QWialog 这样的基类可以选择。 简单的来说,我们创建 的这个项目是基于 QMainWindow 类去开发的。默认勾选“ Generate form ”,意思是生成 ui 窗体 文件 mainwindow.ui 。为了学习方便,我们统一默认基类为 QMainWindow ,但是注意,在嵌入 式里一般不需要标题栏,状态栏等,所以常用的是 QWidget 基类。

QMainWindow:主窗口类,主窗口具有主菜单栏、工具栏和状态栏。类似于一般的应用程

序的主窗口。如果你想做个嵌套的窗口程序开发的软件,不妨选择这个 QMainWindow 。

QWidget:是可视界面类的基类,也就是说 QMainWindow 类也是由 QWidget 继承封装而来。

所以 QWidget 要比 QMainWindow 功能少一些。

QDialog :对话框类,建立一个对话框界面。比较少使用此项作为基类。一般 QMainWindow 和 QWidget 作为基类的居多。 注因为 QWidget 不带窗口标题栏等,嵌入式里最好 QWidget

2、按钮添加

将这个 PushButton 的 text 属性(文本属性)改为“关闭程序”。我们 要设计点击这个按钮将关闭这个窗口,关闭这个程序。

3、在ui文件里连接信号与槽

在 UI 设计器里有两种方法可以连接信号与槽。

信号:是一个对象发出的信号

槽:是当这个对象发出这个信号时,对应连接的槽就发被执行或者触发。

UI 设计器里信号与槽的连接方法一:

在主窗体的上面部分,我们可以看到一些小小的按钮,如下图框框部分。用鼠标放在这些按钮上面可以查看这个按钮是什么作用。信号槽连接的按钮也在上面。

点击信号槽连接的按钮如下,如下图①处,点击进入信号槽连接模式(若想退出信号槽连 接模式,则点击①处左边的按钮),进入信号与槽的连接模式后,将鼠标选中我们的“关闭程序” 按钮,按住按钮,然后用鼠标向外拖动,如②处。此时就会出现信号槽连接的符号。

按如下图步骤选择,左边的“关闭程序” pushButton 按钮的信号,可以看到一个对象的信号可以有多种。右边的 QMainWindow 的槽函数,如果有其他对象,右边不一定只有 MainWidnow 的槽函数(槽),也有可能是其他对象的槽。我们选择按钮的 clicked() 信号,将其连接 MainWindow 对象的 close() 槽。这样就完成了信号与槽的连接,非常简单。我们也可以预知这个信号与槽的功能,当“关闭程序”pushButton 发出了 clicked() 信号(也就是单击信号)。 这个信号由“关闭程序”pushButton 被单击时发出。它就会触发 MainWindow 的 close() 。进而 使整个程序关闭。MainWindow 的 close() 就是退出关闭程序,退出程序的意思。

完成信号槽连接,如下图。要想返回编辑部件模式点击如下图标注位置的按钮。下图就是 信号与槽连接的图示了。在编辑部件模式下我们是看不见的,只有信号槽模式才能看见这样的 图示。

UI 设计器里信号与槽的连接方法二:

选中“关闭程序” pushButton 按钮,然后右键,如下图。选择“转到槽”。

点击“转到槽”后,弹出下面的窗口,这一步是先让我们选择信号。按如下图选择。我们还发现这个 clicked() 信号并不是 pushButton 的,而是 QAbstactButton 的。只是 pusbButton 继承了 QAbstracButton ,同时把这个信号也继承了下来。除此之外我们还看到其 他信号也是不是属于 pushButton 的,也是被继承下来了。所以我们在 C++ 基础部分学过的继承。在 Qt 里的作用表现的淋漓尽致!根本不用重写 pushButton 的 clicked() 事件。 pushButton 只需要 继承父类的 clicked() 事件即可!

点击确认 后,就会跳转到槽函数里,这个代码由 Qt Creator 自动生成。

同时在 mainwindow.h 里声明了这个槽函数。

找到 on_pushButton_clicked 这个槽函数里。在这个槽数里写上 this->close();调用 close() 方法关闭整个程序。

到此这篇关于使用Qt Designer开发的实现示例的文章就介绍到这了,更多相关Qt Designer开发内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 深度揭秘C++面向对象编程中继承的核心概念

    深度揭秘C++面向对象编程中继承的核心概念

    我们知道C语言是面向过程的编程语言,C++在C语言的基础上进化出了面向对象的模型,而继承就是面向对象的重要属性,下面就让小编来和大家详细讲讲吧
    2023-07-07
  • C++计算ICMP头的校验和实例

    C++计算ICMP头的校验和实例

    这篇文章主要介绍了C++计算ICMP头的校验和的方法,代码简单实用,对于校验ICMP报文来说有不错的实用价值,需要的朋友可以参考下
    2014-10-10
  • 一文详解C++中的mutable关键字

    一文详解C++中的mutable关键字

    在C++中mutable关键字正如字面意思所示,表示「可变的」之意,一般在以下两种情况中使用较多,一是修饰类中的变量,用来突破const的限制,二是在Lambda表达式中使用,用来捕获修改表达式之外的变量值,下面我们就针对这两种使用场景逐个介绍
    2023-10-10
  • C语言 详解字符串基础

    C语言 详解字符串基础

    在 C 语言中,字符串实际上是使用空字符 \0 结尾的一维字符数组。因此,\0 是用于标记字符串的结束。空字符(Null character)又称结束符,缩写 NUL,是一个数值为 0 的控制字符,\0 是转义字符,意思是告诉编译器,这不是字符 0,而是空字符
    2022-04-04
  • C语言实现火车票管理系统

    C语言实现火车票管理系统

    这篇文章主要为大家详细介绍了C语言实现火车票管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • C语言基础知识点指针的使用

    C语言基础知识点指针的使用

    这篇文章主要介绍了C语言基础知识点指针的使用,下面文章将让我们掌握指针的概念和用法、指针与数组之间的关系、指针指向的指针、如何使用指针变量做函数参数等更多相关内容,需要的小伙伴可以参考一下
    2022-03-03
  • C++中的vector容器对象学习笔记

    C++中的vector容器对象学习笔记

    这篇文章主要介绍了C++中的vector容器对象学习笔记,其中文章最后标红的resize与reserve方法的差别特别需要注意,需要的朋友可以参考下
    2016-05-05
  • 在C语言中使用对数函数的方法

    在C语言中使用对数函数的方法

    这篇文章主要介绍了在C语言中使用对数函数的方法,包括以e为底和以10为底的对数计算,需要的朋友可以参考下
    2015-08-08
  • C语言实现3个数从小到大排序/输出的方法示例

    C语言实现3个数从小到大排序/输出的方法示例

    这篇文章主要给大家介绍了关于如何利用C语言实现3个数从小到大排序/输出的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用C语言具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-05-05
  • C语言函数栈帧的创建与销毁详解

    C语言函数栈帧的创建与销毁详解

    函数栈帧(stack frame)就是函数调用过程中在程序的调用栈(call stack)所开辟的空间,下面这篇文章主要给大家介绍了关于C语言函数栈帧的创建与销毁的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-09-09

最新评论