QT小白基础教学

QT小白基础教学

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、pandas是什么?

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

二、使用步骤

1.引入库

代码如下(示例):

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import  ssl
ssl._create_default_https_context = ssl._create_unverified_context

2.读入数据

代码如下(示例):

data = pd.read_csv(
    'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())

该处使用的url网络请求的数据。


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

1、命名规则

类名 首字母大写 单词和单词之间首字母大写
函数名 变量名称 首字母小写

2、QT快捷键

注释 ctrl + /运行 ctrl + r
同命名之间的.h 和 .cpp 切换 F4
查找 ctrl +f编译 ctrl + b
自动对齐 ctrl + i帮助文档 F1

3、QPushButton

  • #### 创建并设置按钮

#include //按钮控件头文件

QPushButton * btn1 = new QPushButton;

QPushButton * btn2 = new QPushButton(“第二个按钮”,this);

btn->show() //show以顶层的方式弹出窗口插件

bnt->resize(50,50);设置按钮窗口大小

btn->setParent(this); //让btn对象依赖在Widge窗口中(设置父亲)

btn->setText(“11111111111111111”); //显示按钮文本

btn2->move(100,100); //按钮的位置

  • #### 设置窗口

resize(600,400); //重置窗口大小

setFixedSize(600,400); //设置窗口固定大小

setWindowTitle(“AA”); //设置窗口标题

4、对象树

当创建的对象在堆区时候,如果指定的父亲是QObject派生下来的类或者QObject子类派生下来的类,可以不用管理释放的操作,将对象会放在对象树中。

一定程度上简化了内存回收机制。

#include "mypushbutton.h"
#include <QDebug>

MyPushButton::MyPushButton(QWidget *parent) : QPushButton(parent)
{
    qDebug()<<"我的按钮的构造调用";
}

MyPushButton::~MyPushButton()
{
    qDebug()<<"我的按钮的析构";
}

 //创建一个自己的按钮对象
    MyPushButton * myBtn =new MyPushButton;
    myBtn->setText("我的按钮");

    myBtn->move(200,0);
    myBtn->setParent(this);//设置到对象树中
 Widget::~Widget()
 {
    qDebug()<<"myWidget类析构函数";
    delete ui;
 }

5、QT坐标系

左上角为0,0点

X为以右为正方向 Y为以下为正方向

6、信号和槽

1、连接函数:connect
2、参数

​ 参数1 信号的发送者

​ 参数2 发送的信号

​ 参数3 信号的接受者

​ 参数4 处理的槽函数

3、松散耦合
4、实现 点击按钮 关闭窗口的案例
5、connect(btn ,&QPushButton::click,this,&QWidget::close);

7、自定义信号和槽

1、自定义信号

​ 1.1 写到signals下

​ 1.2 返回 void

​ 1.3 需要声明,不需要实现

​ 1.4 可以有参数,可以重做

2、自定义槽函数

​ 2.1 返回 void

​ 2.2 需要声明,也需要实现

​ 2.3 可以有参数,可以重做

​ 2.4 写到public slots 下或者 public 或者全局函数

3、触发自定义的信号

​ 3.1 emit 自定义信号

4、案例:

​ 老师触发饿了信号,学生响应函数,请客吃饭

8、当自定义信号和槽出现重载

​ 8.1 需要利用函数指针 明确指向函数的地址

​ 8.2 void (Teacher:: *tSignal)(QString) = &Teacher::hungry;

​ 8.3 QString 转成char*

​ ToUtf8()转为 QByteArray

​ Data()转为 Char*

​ 8.4 信号可以连接信号

​ 8.5 断开信号 disconnect

9、拓展

​ 9.1 信号可以连接信号

​ 9.2 一个信号可以连接多个槽函数

​ 9.3 多个信号可以连接同一个槽函数

​ 9.4 信号和槽函数的,必须类型一一对应

​ 9.5. 信号和槽的参数个数是不是一致

​ 9.6 信号槽可以断开连接 disconnect

10、QT4版本写法

​ 10.1 connect (信号的发送者,发送的信号 SIGNAL(信号),信号接受者,槽函数SLOT(槽函数) )

​ 10.2 优点 参数直观

​ 10.3 缺点 编译器不会检测参数类型

11、Lambda表达式

11.1 []标识符 匿名函数

​ 11.1.1 = 值传递

​ 11.1.2 & 引用传递

​ 11.2 () 参数

​ 11.3 {} 实现

​ 11.4 mutable 修饰 值传递变量 , 可以修饰拷贝出的数据,改变不了本体

​ 11.5 返回值 [] () ->int{}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值