qt学习记录

news2024/11/28 6:50:50

一、新建项目时只有pro文件而没有其他文件

此时需要在Kits界面将所有编译器选择,即可出现其他文件

二、QMainWindow、QWidget、QDialog的区别

①QWidget继承于QObject和QPaintDevice,QDialog和QMainWindow则继承于QWidget,QDialog、QMainWindow两者之间没有直接关系。

②QMainWindow 类提供一个有菜单条、锚接窗口(例如工具条)和一个状态条的主应用程序窗口。 主窗口通常用在提供一个大的中央窗口部件(例如文本编辑或者绘制画布)以及周围菜单、工具条和一个状态条。QMainWindow常常被继承,因为这使得封装中央部件、菜单和工具条以及窗口状态条变得更容易,当用户点击菜单项或者工具条按钮时,槽会被调用。

③QWidget类是所有用户界面对象的基类。 窗口部件是用户界面的一个基本单元:它从窗口系统接收鼠标、键盘和其它事件,并且在屏幕上绘制自己。每一个窗口部件都是矩形的,并且它们按Z轴顺序排列。一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分。

④QDialog 是最普通的顶级窗口。 一个不会被嵌入到父窗口部件的窗口部件叫做顶级窗口部件。通常情况下,顶级窗口部件是有框架和标题栏的窗口(尽管使用了一定的窗口部件标记,创建顶级窗口部件时也可能没有这些装饰。)在Qt中,QMainWindow和不同的QDialog的子类是最普通的顶级窗口。

⑤如果是主窗体,则基于QMainWindow创建。如果是顶级对话框,则基于QDialog创建。如果需要嵌入到其他窗体中,则基于QWidget创建。如果不确定,或者1 2两种情况都有,那么,就选择QWidget。

三、新建项目

新建一个Widget Application项目:QWidget作为窗口基类,选中Generate form复选框

项目组织文件:名称.pro  存储项目设置

主程序入口文件:main.cpp  实现main函数

界面文件:weiget.ui  使用XML格式描述原件及布局

widhet.h是所设计的窗体类的头文件,weight.cpp是实现文件,任何窗体或界面组件都是用类来封装的。

四、UI界面设计

1、在ui中添加文字,拖动Display Widgets中的Label放到界面中,双击即可写入文字。

 2、加入按钮,拖动Buttons中的Push Button放到界面中,双击可以写按键上的文字。

 3、拖到界面中的东西可以修改他们的名字,在右上角Filter对象浏览器处。

 4、此处的几个选项为继承关系,QLabel继承QFrame,QFrame继承QWidget,QWiget继承QObject。

 5、信号槽功能,给close按键添加槽,使其点击后关掉窗口。

发送者:选择放置的按键的名字

信号

clicked():当鼠标左键按下然后释放时,或者快捷键被释放时触发信号。

pressed:当鼠标指针在按键上并按下左键时触发该信号。

released:当鼠标左键被释放时触发该信号。

clicked[bool]:当按键被第一次按下然后释放时发出信号,并将当前状态传递给外界。

toggled[bool]:按键的状态发生变化时发出信号,并将当前状态传递给外界。

toggled:当按钮的标记状态发生改变时触发信号。

接收者:Widget

:此时需要点下之后关闭页面,选择close()

6、主函数文件:实现main函数的文件

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();
    return a.exec();
}

QApplication a(argc, argv);  定义并创建应用程序

Widget w;                             定义并创建窗口

w.show();                              显式应用

return a.exec();                     应用程序运行,开始消息循环和事件处理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/153195.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[ 数据结构 ] 弗洛伊德算法(Floyd)--------最短路径问题

0 Floyd算法介绍 和 Dijkstra 算法一样,弗洛伊德(Floyd)算法也是一种用于寻找给定的加权图中顶点间最短路径的算法。该算法名称以创始人之一、1978 年图灵奖获得者、斯坦福大学计算机科学系教授罗伯特弗洛伊德命名弗洛伊德算法(Floyd)计算图中各个顶点之间的最短路…

新应用——信息化财务管理,一站式满足多个需求

财务管理应用是企业为了适应当下社会环境提出的一种将财务管理进行信息化管理的方法,与传统财务管理模式不同,将各类业务数据编制为电子数据,便于财务人员查找数据内容,可以更高效的开展工作。百数应用中心的财务管理应用涵盖了项…

机器学习笔记之深度信念网络(二)模型构建思想(RBM叠加结构)

机器学习笔记之深度信念网络——模型构建思想引言回顾:深度信念网络的结构表示解析RBM隐变量的先验概率通过模型学习隐变量的先验概率引言 上一节介绍了深度信念网络的模型表示,本节将介绍深度信念网络的模型构建思想——受限玻尔兹曼机叠加结构的基本逻…

Flutter多分支打包持续化集成

一、使用效果演示 1.1、选择参数打包 以下为参数使用说明。 packingType枚举 android、ios android ios android&ios (新功能:并行打包)备注: android、ios:串行打包,即先打一个再打一个 android&ios:为并行…

与香港财政司司长同台,欧科云链在这场峰会上都说了啥?

今天,POWER 2023香港Web3创新者峰会在中国香港如期召开,香港特别行政区政府财政司司长陈茂波、财经事务及库务局副局长陈浩濂、全国政协委员、立法会议员吴杰庄等港府要员出席峰会。 作为本场峰会的受邀企业,欧科云链控股(01499.HK)公司执行董…

Kernel Pwn基础教程之 Double Fetch

一、前言 Double Fetch是一种条件竞争类型的漏洞,其主要形成的原因是由于用户态与内核态之间的数据在进行交互时存在时间差,我们在先前的学习中有了解到内核在从用户态中获取数据时会使用函数copy_from_user,而如果要拷贝的数据过于复杂的话…

人工智能-正则表达式

目录1、正则表达式概述2、re模块3、匹配单个字符4、匹配多个字符5、匹配开头和结尾6、匹配分组7、总结1、正则表达式概述 在实际开发过程中经常会需要查找某些复杂字符串的格式 正则表达式:记录文本规则的代码 正则表达式特点: 语法令人头疼&#xff…

立创eda专业版学习笔记(4)(隐藏铺铜)

这里的隐藏有两个意思,一个是铺铜过后把铺铜的填充区域隐藏,方便看图,另外一个是隐藏铺铜的轮廓,方便后续改进。 第一种隐藏,隐藏铺铜的填充区域(成片的图块),但是保留轮廓线 这是全…

联想LJ2655DN激光打印机清零方法

联想LJ2655DN激光打印机是市面上常见的打印机,为了节约成本,我们一般使用都是代用硒鼓来代替原装硒鼓,但是发现更换完硒鼓以后还是不能打印甚至有的机器能够打印但是打印速度会变慢或很慢,这个时候这就需要我们对打印机进行清零复位操作了,此款机器因用户更换的硒鼓类型不…

C++ 模板进阶

目录 1. 非类型模板参数 2. 模板的特化 2.1 概念 2.2 函数模板特化 2.3 类模板特化 2.3.1 全特化 2.3.2 偏特化 2.3.3 类模板特化应用示例 3. 模板总结 1. 非类型模板参数 我们在C语言中使用数组的时候可以定义静态数组,但是有个缺陷就是编译器在对越界检查…

Java自定义泛型类注意点

目录 自定义泛型类 如果定义了泛型类,实例化没有指明类的泛型,则认为此泛型类型为Object类型 由于子类在继承带泛型的父类时,指明了泛型类型。则实例化子类对象时,不需要指明类型 由于子类在继承带泛型的父类时,没有…

WebDAV之葫芦儿·派盘 + Photosync

PhotoSync 支持WebDAV方式连接葫芦儿派盘。 苹果手机通过无线传输,备份和共享照片/视频到计算机,其他手机,NAS和流行的云和照片服务的最佳解决办法,快来试下PhotoSync同步工具吧。 PhotoSync面向移动设备

安装部署wordpress(Ubuntu)

wordpress是一个目前流行的基于web的内容管理系统软件。它是基于PHP语言和MySQL数据库开发的,用户可以在支持 PHP 和 MySQL数据库的服务器上快速轻松的部署自己的网站(博客,外贸网站等等)。WordPress有非常多的第三方开发的免费模…

产线工控安全之现状分析及方案应对

产线安全现状 工业控制系统是支撑国民经济的重要设施,是工业领域的神经中枢。现在工业控制系统已经广泛应用于电力、通信、化工、交通、航天等工业领域,支撑起国计民生的关键基础设施。 随着传统的工业转型,数字化、网络化和智能化的工业控…

数学建模---数值微积分

目录 一.引言 二.数值微分 1.数值差分与差商 利用matlab观察差分与差商的区别: 例题: 二.数值积分 1.数值积分基本定理 2.常见的数值积分公式: 积分公式的精度: 3.数值积分的matlab实现 一.引言 在科学研究和工程计算中&…

LINUX提权之环境变量提权篇

前言 上一篇文章给大家介绍了linux中的内核提权的一些知识点不知道大家学的怎么样了,今天给大家带来一个全新的提权方法——“环境变量提权”,本文会介绍关于环境变量提权的基本知识以及利用方法。 环境变量提权 PATH是Linux系统中的环境变量,指定存储…

全球月活用户4年破10亿,TikTok的3大底层逻辑

武汉瑞卡迪电子商务有限公司:在即将过去的2022年,TikTok成为了众多出海品牌想要赢得新生意的重要平台。品牌应该如何看待TikTok?如何利用节点营销抓住机会?那些已经在TikTok上成功的品牌背后,是否有一些定式&#xff0…

centos7安装ansible

在ansible中主控机器必须是linux机器,不可以是windows,但是被控机器可以是windows。 control machine:192.168.184.128 target machine:192.168.184.129(被管理机器上不需要安装什么软件) 1.ansible的安装前提是要有python&…

vue的基础指令演示代码及简单案例

目录 一、内容绑定,事件绑定 v-text v-html v-on 案例:计数器 二、显示切换,属性绑定 v-show v-if v-bind 案例:图片切换 三、列表循环,表单元素绑定 v-for v-on补充 v-model 通过Vue实现常见的网页效果…

QSFP-DD封装小知识,你了解吗?

随着数据中心和高级网络应用中数据流量的上升,光模块市场向更高的速度,更低的功耗和更小的外形或尺寸发展。QSFP-DD封装有什么特征和优势?它与QSFP28/QSFP56模块有什么区别的?本期文章,我们一起了解一下QSFP-DD封装相关…