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

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

1.学习路径

一  QT简介 ,QTCreator ,QT工程 ,QT的第一个程序,类,组件
二  信号与槽
三  对话框
四  QT Desiner   控件  布局  样式 
五  事件
六  GUI绘图
七  文件
八  网络编程
九  线程
十  数据库
十一 QML 
十二 项目

2.QT的特性: 图形界面开发  (兼容js)
    1. 跨平台  C++  
        到处编译,到处运行
    2. 开源(诺基亚)
        社区支持

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.收到之后干嘛        槽函数执行

编程  : 描述事物
    事   算法        函数
    物   数据结构  对象

基本的 标准信号与槽
    信号  和  槽函数是本来就有的

    信号属于  信号发送者 
    槽函数 属于 信号接收者

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

持续交付与持续部署相关概念(CD)

目录 一、概述 二、持续交付基本概念 2.1 持续交付的含义 2.1.1 项目管理的视角 2.1.2 产品研发的视角 2.1.3 总结 2.2 持续交付涉及的运作环境 2.2.1 开发环境 2.2.2 测试环境 2.2.3 UAT环境 2.2.4 准生产环境 2.2.5 生产环境 2.3 总结 三、持续部署基本概念 3.…

Halcon3D表面平面度检测-平面差值法

//倾斜平面矫正 https://blog.csdn.net/m0_51559565/article/details/137146179前言 通常我们对表面平面度进行检测时,通常使用2种方式。1:通过大卷积核的高斯滤波进行拟合平面,然后求取拟合平面与3D模型间的点间的距离。2:通过平…

Linux_应用篇(01) 应用编程基础

应用编程概念 对于大多数首次接触 Linux 应用编程的读者来说,可能对应用编程(也可称为系统编程)这个概念并不太了解,所以在正式学习 Linux 应用编程之前,笔者有必要向大家介绍这些简单基本的念,从整体上认…

1.ByteBuffer介绍

一、Buffer基本使用 /*** buffer正确使用姿势* 1.向buffer写入数据,调用channel.read(buffer)* 2.调用flip方法切换到读模式* 3.从buffer读数据,通过get方法,每次读取一个字节或字符* 4.调用clear方法或者compact方法切换到写模式*/ Slf4j p…

关于深度学习的 PyTorch 项目如何上手分析?从什么地方切入?

文章目录 PyTorch 项目分析1.背景2.分析流程 PyTorch 项目分析 1.背景 当我们拿到一个 PyTorch 的深度学习项目时,应该怎么入手?怎么去查看代码? 2.分析流程 首先阅读对应项目的 README.md 文件。通过阅读 README.md ,一般可以…

9、jenkins微服务持续集成(一)

文章目录 一、流程说明二、源码概述三、本地部署3.1 SpringCloud微服务部署本地运行微服务本地部署微服务3.2 静态Web前端部署四、Docker快速入门一、流程说明 Jenkins+Docker+SpringCloud持续集成流程说明 大致流程说明: 开发人员每天把代码提交到Gitlab代码仓库Jenkins从G…

电脑开机慢怎么办,电脑开机慢解决方法

新电脑呢,开机速度特别快。有很多人会感觉到电脑拿回家以后,一按开机键,六秒七秒,这个电脑就启动起来了,但是用一段时间以后呢,他会明显感觉到这个开机的速度呢,会特别慢,可能从六秒…

云主机8核16G配置租用优惠价格1198元1年、4688元三年

京东云8核16G租用优惠价格1198元1年、4688元三年,配置为8C16G-270G SSD系统盘-5M带宽-500G月流量,华北-北京地域。京东云8核16G服务器活动页面 atengyun.com/go/jd 京东云8核16G租用优惠价格 京东云:轻量云主机CPU内存:8C16G公网带…

【微服务】Sentinel(熔断降级,热点限流)

文章目录 1.熔断降级1.基本介绍1.线程堆积引出熔断降级2.示意图3.熔断,降级,限流三者之间的关系 2.熔断降级策略(以分钟为基本单位)1.慢调用比例2.异常比例3.异常数 3.熔断降级实例—慢调用比例1.需求分析2.com/sun/springcloud/c…

redis发布订阅和事务管理

目录 一、发布订阅 1.1 发布订阅简单介绍 1.2 相关命令 二、事务管理 2.1 介绍 2.2 Multi、Exec、discard 2.3 示例 2.4事务的错误处理 2.5 事务的冲突问题 2.5.1 悲观锁 2.5.2 乐观锁 2.5.3 事务解决冲突--WATCH 2.5.4 unwatch 2.6 Redis事务的三个特性 一、发布订…

[flink 实时流基础]源算子和转换算子

文章目录 1. 源算子 Source1. 从集合读2. 从文件读取3. 从 socket 读取4. 从 kafka 读取5. 从数据生成器读取数据 2. 转换算子基本转换算子(map/ filter/ flatMap) 1. 源算子 Source Flink可以从各种来源获取数据,然后构建DataStream进行转换…

Git——分布式版本控制工具详解

一、了解Git基本概念 (o)git github gitee的区别 (一)开发中的实际场景 (二)版本控制器的方式 1、集中式版本控制工具 集中式版本控制工具,版本库是集中存放在中央服务器的,team里…