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

Qt的第一个程序(2)

Qt的第一个程序(2)

  • 1.编辑框
  • 2.使用图形化实现hello world编辑框
  • 3.使用代码实现hello world编辑框
  • 4.使用图形化实现hello world按钮
  • 5.使用代码实现hello world按钮
  • 6.图形化VS代码
  • 7.变量命名
  • 8.查询文档

🌟🌟hello,各位读者大大们你们好呀🌟🌟
🚀🚀系列专栏:【Qt的学习】
📝📝本篇内容:编辑框;使用图形化实现hello world编辑框;使用代码实现hello world编辑框;使用图形化实现hello world按钮;使用代码实现hello world按钮;图形化VS代码;变量命名;查询文档
⬆⬆⬆⬆上一篇:Qt的第一个程序
💖💖作者简介:轩情吖,请多多指教(>> •̀֊•́ ) ̖́-

1.编辑框

我们之前实现的hello world是使用的是标签,但是其实显示hello world不仅仅是标签,还有其他的,就比如现在说的编辑框,编辑框分为单行编辑(QLineEdit)和多行编辑框(QTextEdit),如下图在这里插入图片描述因此我们也有两种实现的办法:代码或者图形化,使用方法和前面讲的标签其实差不多

2.使用图形化实现hello world编辑框

在这里插入图片描述
在这里插入图片描述

3.使用代码实现hello world编辑框

在这里插入图片描述

4.使用图形化实现hello world按钮

我们也可以使用按钮来显示hello world,当然按钮按钮肯定有它的功能,具体后面讲,先让他把hello world显示出来
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这其实非常简单,然后我们接下来就要使用一下按钮的功能,众所周知,按钮是一个按下去会产生一些效果的东西。因此在Qt中就引入了信号槽的机制,简单来说就是需要有一个函数来处理我们按钮按下去的信号,给按钮的点击操作关联一个处理函数,当用户点击的时候就执行这个处理函数。
Qt中提供了一个函数connect()来连接“信号”和“槽(处理函数)”,这个函数是QObject这个类提供的一个静态函数
在这里插入图片描述
在这里插入图片描述
上面的代码主要是演示了connect的使用方法,我们先大致看一下,主要功能就是实现了一个按钮按下去后可以在hello world和hello Qt之间进行切换
在这里插入图片描述
我们来详细看看这份代码的细节,首先我们的connect中怎么做到用ui指向的pushButton,我们首先要知道我们的ui是怎么回事,它其实是qmake自动生成的,我们刚创建完项目它就存在了,通过它我们可以操控Widget.ui中的控件
在这里插入图片描述
我们再来看一下qmake根据widget.ui自动生成的一个头文件,在我们项目的路径下会生成的一个build文件,前面演示过
在这里插入图片描述
我们之所以能够使用pushButton就是因为我们继承了Ui_Widget这个类,并且我们发现pushButton这个成员变量的名字是根据objectName来命名的(我们进行进行修改,修改成什么,变量的名字就是什么),通过这个名字我们可以获取到对应的控件变量

5.使用代码实现hello world按钮

在这里插入图片描述
在这里插入图片描述

6.图形化VS代码

在这里插入图片描述
一般来说如果当前程序界面,界面内容是比较固定的,此时就会以图形化的方式来构造界面。但是如果程序界面经常要动态变化,此时就会以代码的方式来构造界面。总的来说哪种方便使用哪种,互相配合着来。

7.变量命名

hello_world_button这种被称之为蛇形命名法,C/C++/Python用的较多
像Qt中QPushButton这种被称之为驼峰命名法,使用大写字母来进行分割,一般分为大驼峰和小驼峰,大驼峰是用于类名的,如QWidget,小驼峰用于变量名和函数,如pushButton和setText()。Java/Go/JS用的较多
总的来说驼峰命名法用的比较多,在这里讲的意义主要是为了更好在Qt中进行区分理解

8.查询文档

查询文档一共有三种方法,其中一种之前讲过,就是我们开始菜单中的Assistant
在这里插入图片描述
第二种方法是在代码中点击想要查询的类或者函数,然后点击F1即可
在这里插入图片描述
第三种方法是在Qt Creator中选择左侧栏中的“帮助”
在这里插入图片描述

🌸🌸Qt的第一个程序(2)大概就讲到这里啦,博主后续会继续更新更多Qt的相关知识,干货满满,如果觉得博主写的还不错的话,希望各位小伙伴不要吝啬手中的三连哦!如有小伙伴需要Qt的安装包可以私信我,你们的支持是博主坚持创作的动力!💪💪

http://www.xdnf.cn/news/14938.html

相关文章:

  • C++ -- string类的模拟实现
  • 单点登录SSO的演进和最佳实践,含springBoot 实现(Java版本)
  • .NET9 实现 JSON 序列化和反序列化(Newtonsoft.Json System.Text.Json)性能测试
  • 用c++做游戏开发至少要掌握哪些知识?
  • 合成生物学论坛|2025合成生物学期刊高质量发展论坛8月上海举办
  • 在线学堂-4.媒资管理模块(三)
  • 暑假算法日记第三天
  • D触发器实现2分频verilog及电路
  • 解决Android Studio不能同时打开多个文件问题
  • 微算法科技(NASDAQ: MLGO)探索Grover量子搜索算法,利用量子叠加和干涉原理,实现在无序数据库中快速定位目标信息的效果。
  • 2048-控制台版本
  • K8s-服务发布进阶
  • 分布式事务解决方案(二)
  • 电信、移动、联通、广电跨运营商网速慢原因
  • Linux国产与国外进度对垒
  • 408第三季part2 - 计算机网络 - 传输层
  • C++高频知识点(二)
  • std::vector<bool>有什么特殊的吗
  • 植物大战僵尸杂交重制版1.0,经典焕新,重燃策略塔防之火
  • 极简的神经网络反向传播例子
  • Vue计算属性(computed)全面解析:原理、用法与最佳实践
  • Web攻防-XMLXXE上传解析文件预览接口服务白盒审计应用功能SRC报告
  • 【Python】文件应用: 查找读取的文件内容
  • list和list中的注意事项
  • 使用ADSL接入Internet,用户端需安装什么协议?
  • Kubernetes 集群相关规范
  • 手机电工仿真软件更新了
  • 让你的asp.net网站在调试模式下也能在局域网通过ip访问
  • NLP之文本纠错开源大模型:兼看语音大模型总结
  • bottles安装网易云出现的问题01中文出现乱码问题