【QT学习】1.qt初识,创建qt工程,使用按钮,第一个交互按钮

1.初识qt--》qt是个框架,不是语言

1.学习路径

一 QT简介 ,QTCreator ,QT工程 ,QT的第一个程序,类,组件

二 信号与槽

三 对话框

四 QT Desiner 控件 布局 样式

五 事件

六 GUI绘图

七 文件

八 网络编程

九 线程

十 数据库

十一 QML

十二 项目
2.QT的特性: 图形界面开发 (兼容js)

  1. 跨平台 C++

到处编译,到处运行

  1. 开源(诺基亚)

社区支持

3.QMake CMake:

Makefile :脚本程序

预处理 预编译 编译 链接 。。。。

编译

gcc g++:程序 命令形式存在

4.什么是QT?

qt是跨平台的图形界面开发框架,其中包括很多模块(套件,例如widget),模块中包括很多提供给开发者的类。通过这种方式简化开发图形界面的速度。

2.qt的模块(部件)

模块是qt的组成部分,模块中包括用户使用的类。例如network模块是网络相关,里面包括的类提供给开发者使用。

3.创建qt工程

1.文件---》创建新项目

2.建立一个空项目,语言使用C++

3.命名

4.使用qmake

QMake CMake:使用makefile

Makefile :脚本程序

预处理 预编译 编译 链接 。。。。

编译

gcc g++:程序 命令形式存在

5.点击minGW

MSVC----》使用VS写qt

minGW----》使用Qt Creator写qt

6.其他

7.创建完成

4.编写第一个qt文件

《1》.pro编写

1.空项目中

2.添加资源文件

(1)添加main.cpp

(2)添加类文件

前面同理

《2》main编写(资源中)

以下代码只是支撑,写qt必须要在此环境之下

QApplication a(argc,argv);

结果:


二。玩玩按钮(使用参考手册,选中按F1)

1.创建项目(不创建空,创建Widget项目:已经声明页面模块的项目)

我们前面创建先不用Generate form

2.参考文档使用

1.使用QpushButton类,点击F1,看它的参考手册

3.代码

MainWindow.class中创建成员属性

but,but1都可以实现按钮

private:
    QPushButton* but;
    QPushButton but1;

1.在MainWindow.cpp中设置页面属性

//页面设置
this->setWindowTitle("玩按钮");
this->resize(500,500);

2.but按钮处理(MainWindow.cpp中)

//注意:需要设置父类为此页面--》这样才可以显示在此页面上
but=new QPushButton("连接",this);//创建按钮,名称连接,父类此页面
but->move(100,0);//移动按钮--》相对于左上角
but->resize(50,60);//按钮大小设置--》可以看参考文档

3.but1处理(MainWindow.cpp中)

but1.setText("关闭");//创建按钮,名称关闭
but1.setParent(this);//设置按钮,父类此页面
but1.move(100,100);
but1.resize(50,60);

4.connect交互处理,下一节详细讲(MainWindow.cpp中)

//通过connect函数实现函数的交互
connect(&but1,                    //发送者
       &QPushButton::pressed,  //发送触发事件
       this,                   //接受者
       &MainWindow::close);    //接受数据后处理操作

结果:

设置按钮窗口为MainWidget窗口的子窗口

设置MainWidget窗口为按钮窗口的父窗口

设置w为*btn的父对象

什么是信号与槽:

connect 电信运营商

发短信

1.谁发 信号发送者

2.谁收 信号接收者

3.发的什么内容 信号

4.收到之后干嘛 槽函数执行

编程 : 描述事物

事 算法 函数

物 数据结构 对象

基本的 标准信号与槽

信号 和 槽函数是本来就有的

信号属于 信号发送者

槽函数 属于 信号接收者

相关推荐
Thomas_Cai5 分钟前
Python后端flask框架接收zip压缩包方法
开发语言·python·flask
霍先生的虚拟宇宙网络8 分钟前
webp 网页如何录屏?
开发语言·前端·javascript
温吞-ing10 分钟前
第十章JavaScript的应用
开发语言·javascript·ecmascript
姆路10 分钟前
QT Designer内存飙升
qt
Bald Baby11 分钟前
JWT的使用
java·笔记·学习·servlet
魔道不误砍柴功16 分钟前
实际开发中的协变与逆变案例:数据处理流水线
java·开发语言
鲤籽鲲24 分钟前
C# MethodTimer.Fody 使用详解
开发语言·c#·mfc
亚图跨际28 分钟前
Python和R荧光分光光度法
开发语言·python·r语言·荧光分光光度法
Rverdoser36 分钟前
RabbitMQ的基本概念和入门
开发语言·后端·ruby
dj244294570739 分钟前
JAVA中的Lamda表达式
java·开发语言