当前位置: 首页 > news >正文

QT6学习第三天

QT6学习第三天

  • 第一个Widgets项目
    • 创建项目
    • 项目界面简单介绍
    • 编译文件介绍

我在第一天中将重点标了颜色,后边我把一些简单的东西都不写了,写了的都是实际用的东西,就不标颜色了。

第一个Widgets项目

首先我们创建一个widgets项目,点击创建项目,弹出窗口,有很多选择,我们来创建一个C++的QT Widgets项目。你要用py的QT你就选第二个QT for Python。

创建项目

在这里插入图片描述

点击选择,进入下一个窗口

在这里插入图片描述

我们来起个名字,我习惯勾选默认路径,这样以后创建的项目,路径都是这里。点下一步

在这里插入图片描述

这里选择编译器,我习惯用CMake,用qmake也行,我看的这本书用的qmake。下一步

在这里插入图片描述

这里是类信息,我的理解是你要创建什么类型的文件,在Base class中有三个选项,分别是QMainWindow(主窗口)、QWidgets(部件窗口)、QDialog(对话窗口)。咱初学者,来个最基础的,我选了QDialog。我还勾选了Generate form。表明会自动生成表单文件hellodialog.ui,这样用户就可以使用设计模式来可视化设计界面。 下一步之后是选择翻译,咱先不需要,接着下一步。

在这里插入图片描述

这里是选择编译套件。安装QT时装了MinGW64。所以就选它。下一步

在这里插入图片描述

这里是项目管理和版本控制选择,如果你用git等版本管理你可以选,我这没有就不选了。下面五个文件,就是我们创建项目后会生成的五个文件。用处就不用介绍了吧,一看就知道了。点击完成,我们的项目就创建完了。

项目界面简单介绍

我们打开项目,这里界面介绍没啥东西,自己捅咕捅咕就知道了,就一个很实用介绍下。
这个在Explorer中打开就是在文件夹中打开,方便快速找到文件位置。

在这里插入图片描述

我们双击ui文件即可进入设计模式,在设计模式界面,左边一堆工具那一栏就是各种QT的部件,以拖拽的方式在窗体上布局,右边上部分的对象查看器能看到你在窗体上布局了哪些部件,右边下部分的属性编辑器可以设置部件的属性。他会显示继承过来的属性。有一个重用的地方,切换编辑模式。这里的 1 是窗口部件编辑模式,2 是信号/槽编辑模式,3 是伙伴编辑模式,4 是Tab顺序编辑模式。后边一些就是布局的工具。

在这里插入图片描述

在工具栏中的界面编辑器中有预览功能,很实用。

在这里插入图片描述
我们进入到项目界面,我们在运行示例的时候已经见过了。这里主要是配置一些编译的参数,对编译不了解的只需弄明白构建目录就行,其他都不用改。这里对不同的版本说一下。

如Debug版本、Profile版本或Release版本。这3个版本的区别是:Debug版本程序包含了调试信息,可以用来调试,但生成的可执行文件很大;而真正发布程序时要使用Release版本,不带任何调试符号信息,并且进行了多种优化;另外,Profile是概述版本,带有部分调试符号信息,在Debug版本和Release版本之间取一个平衡,兼顾性能和调试,性能较优且方便调试。

在这里插入图片描述

编译文件介绍

如果你创建项目的时候用的是qmake,就会生成一个pro文件,这个是qmake的编译文件。
如果你创建项目的时候用的是cmake,就会生成一个cmakelists文件,是cmake的编译文件。
关于编译文件内容,大家AI搜索吧,我也不太了解。

你还会发现一个以user结尾的文件,这个文件是在你打开你的pro或cmakelists文件时,会自动生成,主要是记录你电脑的环境什么的。如果你打开别人的项目时(有这个user文件),QT Creator会提醒你是否载入特定环境时,选否,用你自己的环境就行。

http://www.lryc.cn/news/486855.html

相关文章:

  • 计算机网络-MSTP基础实验一(单域多实例)
  • React合成事件及其核心思想详解
  • Datawhale模型减肥秘籍Tasking之模型量化
  • 在云服务器搭建 Docker
  • Redis 的代理类注入失败,连不上 redis
  • 版本控制【Git Bash】【Gitee】
  • Neo4j Desktop 和 Neo4j Community Edition 区别
  • 使用uniapp开发微信小程序使用uni_modules导致主包文件过大,无法发布的解决方法
  • HarmonyOS NEXT应用元服务开发Intents Kit(意图框架服务)事件推荐开发者测试
  • GD32F103 实践-- MCU编译运行
  • SQL复杂数据类型处理
  • ROS第九梯:ROS+VSCode+Python+C++自定义消息发布和订阅
  • 【Linux】指令 + 压缩与解压
  • 力扣(leetcode)题目总结——动态规划篇
  • 数据仓库数据湖湖仓一体解决方案
  • 微信小程序 最新获取用户头像以及用户名
  • 无人机在森林中的应用!
  • Seatunnel解决Excel中无法将数字类型转换成字符串类型以及源码打包
  • 在阿里云快速启动Appsmith搭建前端页面
  • 「51媒体」:企业成长助推器
  • 安全、便捷、效率高,明达边缘计算网关助力制药装备企业远程调机
  • 海康威视和大华视频设备对接方案
  • 用DMA来自动控制PWM的输出(音频输出,交直流转换)
  • 利用hive元数据统计数据量
  • 平均值(水题???)
  • 免费开源!DBdoctor推出开源版系统诊断工具systool
  • Bufferevent and SSL
  • 我要成为算法高手-位运算篇
  • 分布式IO模块:智慧楼宇的“智慧眼”与“智慧手”
  • 嵌入式八股文