[C++ 小学期] QT 第一课

本文介绍了如何使用QT设计器创建UI程序,重点讲解了窗口组件的使用,如设置窗口标题和移动按钮。此外,详细阐述了QT的核心——信号和槽机制,包括标准信号与槽的连接方式,以及自定义槽的实现。通过实例展示了如何通过信号连接按钮的按下事件到关闭窗口或自定义函数。最后,提到了如何通过信号控制父类和子类之间的交互。
摘要由CSDN通过智能技术生成

QT设计器

手工敲代码,效率极低

所以微软就开发了一个 RAD设计模式

因此我们可以由环境进行生成

设计器可以解决很多简单的问题(就是一些普通的工具)

总结

  • 创建工程并运行

  • 理解工程文件结构(pro,h,cpp,ui), 程序入口: main

  • 控制台

  • 空项目 -> UI程序

框架

int main(int argc, char *argv[])
{ 
	// 应用程序类对象 有且只有一个
    QApplication a(argc, argv);
    
    //保持窗口不变
    return a.exec();
}

一些组件的使用

窗口(Widget)

MyWidget name

name.setWindowTitle(内容) 设置窗口标题

button

定义 QPushButton b1(&对象)

setText() 设置按钮内容

setParent() 设置按钮父类

name.move(x,y) 移动到

Q:
因为我们如果要定义100个Button不可能在主函数写100个
所以我们需要在 头文件里写(不能在cpp里写哦)

指针类型记得开辟this的空间

b2 =  new QPushButton(this);
b2->setText(":_:");
b2->move(200,200);

标准信号和槽(QT核心)

让按钮有反应才行

信号:

软件模拟的中断

close

我这里定义的是指针 所以没有&

  • 信号发出者

  • &发送者的类名::信号名字

  • 信号接收者

  • &接受的类型::槽函数名字

connect(b2,&QPushButton::pressed,this,&MyWidget::close);

Boss样例

  • 如果需要通过子类 来 调控父类 需要用到信号
  • 信号必须有signals 信号就是函数的声明

自定义槽(普通函数的用法)

QT5: 任意的成员函数,普通全局函数,静态函数

槽函数需要和信号一致(参数,返回值)

由于信号都是没有返回值,所以槽函数一定没有返回值

  • 两个的 接收者 不同
  • 可以自定义函数
  • hide是隐藏
connect(&b1,&QPushButton::released,this,&MyWidget::mySlot);
connect(&b1,&QPushButton::released,b2,&QPushButton::hide);
void MyWidget::mySlot()
{
    b1.setText("123");
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值