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

商业网站建设常识网络推广培训课程内容

商业网站建设常识,网络推广培训课程内容,网站防红链接怎么做,微信小程序制作平台哪个好前言: 欢迎来到《QT 第三讲——基础篇 初用信号槽与命名规范》! 在上一讲《QT 第二讲——基础篇 Qt的第一个程序》中,我们一起完成了第一个Qt窗口程序的创建,初步熟悉了Qt Creator的开发环境,并掌握了Qt项目的基本结构…

前言:

欢迎来到《QT 第三讲——基础篇 初用信号槽与命名规范》!
在上一讲《QT 第二讲——基础篇 Qt的第一个程序》中,我们一起完成了第一个Qt窗口程序的创建,初步熟悉了Qt Creator的开发环境,并掌握了Qt项目的基本结构。通过简单的代码实践,大家已经能够感受到Qt框架的便捷性与跨平台特性。

从这一讲开始,我们将正式使用Qt的核心机制之一——信号与槽(Signals & Slots)。作为Qt框架区别于其他GUI库的重要特性,信号槽机制实现了对象间的高效通信,是Qt开发中不可或缺的“魔法工具”。本讲将通过实例演示如何初步使用信号槽,并深入探讨Qt开发中的命名规范,帮助大家从起步阶段养成规范编码的习惯,为后续复杂项目打下坚实基础。
让我们开始学习如何用信号槽连接界面与逻辑,同时掌握代码可读性与可维护性的关键技巧吧!


目录

前言:

一、hello world的其他写法

1.1 Line Edit 图形化编辑

1.2 Line Edit代码编程

二、初用信号槽

2.1 button图形化编写

 2.2 button代码编写

三、QT使用技巧与命名规范

3.1 快捷键

3.2 命名规范

3.3 查询文档

四、初识QT坐标系

总结:


一、hello world的其他写法

在上一讲当中我们使用了,label的图形化界面与代码方式编写,但是我们下面将要讲解另一个控件---Line Edit,它是我们在平常界面当中看到的编辑框

 下面还有一个控件Text Edit 它同样是编辑框不过是更大的文本编辑框,但是我们hello world很明显不需要使用它,我们这里使用Line Edit来掩饰。

1.1 Line Edit 图形化编辑

这里很简单就不再浪费大家时间,操作流程是与上一讲的Label是一样的。

1.2 Line Edit代码编程

这里的操作与上一讲几乎是一致的,这里不在过多的介绍。

这里的使用的就不再介绍了。 


二、初用信号槽

这里我们就要第一次接触了,QT的一个重要概念那---信号与槽,但是这里我们只是第一次使用一下信号槽但是正式的介绍QT还是要等到下一讲。

我们这里还是以Hello World程序为演示,我们这里再介绍一个控件button,他就是我们平常界面当中的按钮,而我们再QT当中选择Push Button,这是我们QT最常用的按钮,它就是一个普通的按钮。

2.1 button图形化编写

还是一样的,我们打开一个项目,然后再左边栏找到button图标就好。

预期效果图,然后我们正常编译一下就好了 

 

效果图: 

但是按钮与上面的QLineEdit与QLable不同,button按钮可以发出信号的,信号我们很熟悉嘛,毕竟信号也是进程间通信的一种方式,在Linux当一个进程接收到一个信号就可以根据提前设置好的信号处理函数,处理信号。

我们关于信号与槽,也可以这样认为,当用户与我们的界面交互的时候,会发个信号给我们,我们就可以根据信号来调整相关控件的表现。

如果大家听不懂,大家可以等到下节课。

这里我们以代码的形式第一次使用槽函数。

我们想要使用槽函数,我们就必须完成信号与槽函数的链接,使用的函数的是connect,但是这个函数与TCP套接字的connect函数没啥太大的联系。

这里我们使用的直接是图形化界面的方式编写的,我们想要使用这个控件建立槽函数,我们就必须知道这个控件的名字,在上一讲当中我们也介绍到了。

QT此时就会给这个控件分配一个objectName属性
这个属性的值,要求是在界面中得是唯一的.(不能和别人重复)会自动生成一个名称
而qmake在预处理.ui文件的时候,就会根据这里的objectName生成对应的
也可以手动修改成别的名称
该QPushButton对象的变量名字就是这里的objectName.
这个变量就是ui属性中的成员变量.。 后面我们想要connect的时候,使用的就是这个变量名。

当然具体的connect的讲解,还是要等到下一讲,大家这时候听个响就好。

现在我们正式编写pushButton的槽函数,目标是 这个函数:我们按一下按钮,就可以改变按钮的文字

最后的效果图 

 2.2 button代码编写

当然我们根据上面的初步使用,想要改变为代码。

但是也是有几个需要注意的地方,就像是我们上面使用了一个新的函数,但是我们的代码时通过new出一个新的变量,它是一个临时变量,是没法直接再另一个函数内使用,所以我们在使用之前必须提前为Widget提前声明一个变量。

然后再进行上面的操作,就可以看到了。

这里就不再详细演示了,直接展示代码。

//widget.h
#ifndef WIDGET_H
#define WIDGET_H
#include <QPushButton>
#include <QWidget>QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECTpublic:Widget(QWidget *parent = nullptr);~Widget();void handleClick();private:Ui::Widget *ui;QPushButton* Button;
};//这个函数我们就是想要按一下按钮,就可以改变按钮的文字#endif // WIDGET_H
//widget.cpp#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//这里我们完成了初步的控件搭建//接下来我们使用槽函数Button=new QPushButton(this);Button->setText("hello world");connect(Button,&QPushButton::clicked,this,&Widget::handleClick);
//    connect(ui->pushButton,&QPushButton::clicked,this,&Widget::handleClick);
}void Widget::handleClick()
{if(Button->text() == QString("hello world")){Button->setText("hello QT");}else{Button->setText("hello world");}
}Widget::~Widget()
{delete ui;
}

这是最后的效果图,本人不会动图不好演示,大家下来实践就好了。


三、QT使用技巧与命名规范

3.1 快捷键

这个部分主要是和大家分享一下在QT中,方便我们编写代码的快捷键。

• 注释:ctrl + /

• 运⾏:ctrl + R

• 编译:ctrl + B

• 字体缩放:ctrl + ⿏标滑轮

• 查找:ctrl + F

• 整⾏移动:ctrl + shift + ⬆/⬇

• 帮助⽂档:F1

• ⾃动对⻬:ctrl + i;

• 同名之间的 .h 和 .cpp 的切换:F4

• ⽣成函数声明的对应定义: alt + enter

•转到定义  :crtl+左键

•返回:alt+左方向键

3.2 命名规范

给变量/函数/文件/类起名字,非常有讲究的

1. 起的名字要有描述性,不要使用abc,xyz这种比较无规律的名字来描述。

2.如果名字比较长,由多个单词构成的,就需要使用适当的方式来进行区分不同单词,

之前的C/C++博客当中,偏好使用空格,来进行单词的分割
形如:

student count
unordered map

这种方法被称为蛇形命名法,如下图那样,横线就是我们的空格。

但是编程界也有其他比较流行的命名规范,如下面的那种。

priority_queue,这种命名方法被称为驼峰命名法。,下划线就是峰顶。

在编程届,驼峰命名法的规则,使用程度比蛇形命名更广泛,

Qt中,偏好使用大写字母来进行单词分割的.
形如:studentCount 小驼峰
给变量/函数,主要就是 C/C++/Python 偏好蛇形命名.,而Java/JS/Go……偏好驼峰命名.
当然最好使用什么命名规范,只有一个要求:入乡随俗。
你公司中使用的项目,使用的是驼峰/蛇形/其他??照着公司的做就可以了。

3.3 查询文档

大家一定要有查询文档的意识!!
未来实际开发中,一定会用到很多的第三方库和框架的
很可能用到的库/框架,比较小众,网上很难找到一些相关资料,
最核心的参考资料,就是官方文档,(大概率是英文的)

打开帮助⽂档有三种⽅式. 实际编程中使⽤哪种都可以.

1、光标放到要查询的类名/⽅法名上, 直接按 F1

2、Qt Creator 左侧边栏中直接⽤⿏标单击 "帮助" 按钮:

3、找到 Qt Creator 的安装路径,在 "bin" ⽂件夹下找到 assistant.exe,双击打开;

 


四、初识QT坐标系

QT坐标系与我们中学数学的坐标系不同,它是左手坐标系,就是坐标体系:以左上⻆为原点(0,0),X向右增加,Y向下增加。

对于嵌套的控件来说,其坐标是相对于⽗窗⼝来说的。

⽰例:使⽤Qt中的坐标系设置控件的位置; 【通过move函数可以设置控件相对于原点的位置】

移动的单位是像素


总结:

通过本讲的学习,你已经掌握了Qt信号槽的基本用法,理解了其“松耦合”设计的优势,并学会了如何通过规范的命名让代码更加清晰易懂。现在,你不仅能够通过信号槽实现简单的界面交互,还能通过合理的命名让代码逻辑一目了然,这对团队协作和长期维护至关重要。

在下一讲《QT 第四讲——基础篇 信号和槽》中,我们将进一步深入信号槽的进阶用法,包括自定义信号与槽信号槽的参数传递以及跨线程通信的注意事项。通过更复杂的案例,你将彻底掌握这一机制的精髓,并能灵活运用它解决实际开发中的各类交互问题。

我们下一讲见!

http://www.dtcms.com/wzjs/291798.html

相关文章:

  • 地方网站盈利网站关键词免费优化
  • 天津 网站建设公司襄阳网站推广优化技巧
  • ai网页设计教程seo排名优化代理
  • 长沙企业网站建设团队国内广告联盟平台
  • 西安高端网站制作b2b电子商务平台有哪些
  • 武汉建设监理协会网站百姓网推广怎么收费标准
  • 郑州网站建设 郑州网站设计app推广注册赚钱
  • 标准网站优势优化搜索关键词
  • 网站开发需求文档长春seo
  • 网站建设和维护一年的费用百度收录查询接口
  • flash网站怎么做音乐停止百度推广的定义
  • 企业网站设置费用武汉seo和网络推广
  • 安卓网站开发前景win7优化
  • 吴江网站制作公司深圳整站全网推广
  • 柳州企业网站开发平台百度云下载
  • 对外宣传网站建设方案百度手机助手网页版
  • 简述电子商务网站建设的基本流程seo咨询河北
  • 宝鸡手机网站建设青岛seo排名扣费
  • 在网站上上传文件需要怎么做微信如何引流推广精准加人
  • 做电子商务网站建设工资多少厦门网站seo
  • 一站式做网站哪家强宁波seo外包引流推广
  • 做搜狗手机网站点击软搜索引擎广告优化
  • 深圳定制开发网站seo就业哪家好
  • wordpress支持七牛seo是什么意思怎么解决
  • 晋城做网站百度推广首次开户需要多少钱
  • 经营性网站必须备案长沙网站优化推广
  • 婚恋网站女孩子做美容来几个关键词兄弟们
  • 网站 建设设计百度一下网页版搜索引擎
  • 东莞企业网站推广技巧学生个人网页制作教程
  • wordpress怎样把文章放在一个页面网络优化师是什么工作