Qt标准信号槽

本文介绍了信号槽在QtGUI编程中的作用,以QPushButton为例,详细讲解了信号(如clicked(),pressed(),released()等)的触发和槽函数的定义。重点展示了如何通过connect函数将信号与槽关联。后续内容涵盖新工程创建、界面布局和实际代码编写示例。
摘要由CSDN通过智能技术生成

目录

一、什么是信号槽

1.信号

2.槽

3.信号与槽关联 

二、标准信号槽例程

1.新建工程

2.界面布局

3.代码编写


一、什么是信号槽

1.信号

以 QPushButton 的单击事件为例:

        按下按钮,会触发 mousePressEvent 事件,然后 QPushButton 会发射 pressed() 信号;

        松开按钮,会触发 mouseReleaseEvent 事件,然后 QPushButton 会发射 released() 信号和 clicked() 信号。

// 当按钮被点击(按下并抬起)之后,发送该信号,其中带有一个默认参数
// 对于QPushButton 通常不需要传递这个默认参数
// 对于可选中/取消选中的按钮,比如复选框QCheckBox、单选框QRadioButton 可以通过该参数,获取其是否选中
void clicked(bool checked = false);

// 当按钮被按下时,发送该信号
void pressed();

// 当按钮被抬起时,发送该信号
void released();

// 当按钮状态改变时,发送该信号,其中带有一个参数checked
// checked 用于标识复选框QCheckBox、单选框QRadioButton是否被选中
void toggled(bool checked);

2.槽

        我们通常说的槽,就是槽函数

        当点击了 QPushButton 按钮之后,通常需要执行对应的操作,比如让 QMainWindow 窗口最大/最小/正常化显示,或者关闭窗口

// 最大化显示
void showMaximized();

// 最小化显示
void showMinimized();

// 正常显示
void showNormal();

// 关闭窗口
bool close();

3.信号与槽关联 

需要将信号和槽使用 connect 函数进行连接

connect 函数的一般形式如下:

connect(sender, signal, receiver, slot);

sender发出信号的对象。比如 QPushButton 按钮

signal发出的信号。比如 clicked()

receiver接收信号的对象。比如 QMainWindow 窗口

slot接收到信号之后,调用的函数

二、标准信号槽例程

1.新建工程

2.界面布局

3.代码编写

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

琪琪猫不会嵌入式

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值