当前位置: 首页 > news >正文

【QT】信号和槽

什么是信号和槽

信号

信号指的就是控件发出的特定的信号。
例如按键的信号:

image

槽的意思就是槽函数,可以将槽函数绑定在某个控件的信号上,当这个控件发出这个信号的时候,就会触发这个槽函数(与中断类似)。

如何将信号和槽关联起来

自动关联

右键控件 -> 点击“转到槽” -> 选择其中一个信号 -> 系统会自动在widget.h中添加以下内容:
(槽函数只能声明到 private slots 或者 public 下面)

image

并且会在widget.cpp里面实现这个槽函数:
(实现的效果就是按一下此按键则会打印一次“hello”)

image

手动关联

手动关联需要使用connect函数:

点击查看代码
connect(ui->pushButton_2,SIGNAL(clicked()),this,SLOT(on_pushButton_2_clicked()));
简化:connect(A,SIGNAL(B),C,SLOT(D));
解释:当对象A发出B信号时,就会触发对象C的槽函数D

再增加对应的槽函数:

点击查看代码
void Widget::on_pushButton_2_clicked()
{qDebug("world");
}

不要忘了在widget.h文件中添加声明:

点击查看代码
class Widget : public QWidget
{Q_OBJECTpublic:explicit Widget(QWidget *parent = 0);~Widget();private slots:void on_pushButton_2_clicked();	//添加声明
private:Ui::Widget *ui;
};

ps. 为了方便分析程序,最好给控件修改为合适的名称,尽量通俗易懂。

http://www.wxhsa.cn/company.asp?id=4992

相关文章:

  • 学习日报|线程池专题学习总结 - 详解
  • 如何设计业务架构 - 智慧园区
  • snmp协议
  • 刷题复习(四)二分搜索
  • aardio | 通过点击checkbox复选框本身判断是否勾选
  • 项目介绍
  • 新媒体运营用AI排版工具|10分钟搞定公众号图文的全流程指南
  • 练习第一天学习的内容
  • 常见小错误 FREQUENTLY MADE MISTAKES IN OI
  • ctf工具整理
  • 力扣39题 组合总和
  • 250915 jave se简单过完一遍
  • 详细介绍:Linux相关概念和易错知识点(44)(IP地址、子网和公网、NAPT、代理)
  • 详细解析为什么将 ThreadLocal 声明为 static final ?
  • AT_arc183_b [ARC183B] Near Assignment
  • 0128_模板方法(Template Method)
  • kubectl 常用命令的分类汇总(一)
  • 完整教程:C3P0连接池适配HGDB
  • kubectl 常用命令的分类汇总(二)
  • ECT-OS-JiuHuaShan框架的逻辑是自洽的,是基于数学表达,不替代现实的苦辣酸甜。
  • 《FastAPI零基础入门与进阶实战》第18篇:Token验证改善--CRUD中应用 - 详解
  • 【C++】设计模式之PIMPL模式
  • 力扣34题 在排序数组中查找元素的第一个和最后一个位置
  • ECT-OS-JiuHuaShan框架编程的示范与分析,无懈可击的数学逻辑自洽
  • 阿里妈妈方圆体如何使用圆角
  • 使用 systemd 管理 Python 项目(示例:confhub-sync)
  • 9.15模拟赛总结
  • 1111
  • 【QT】创建一个简单的QT界面
  • ECT-OS-JiuHuaShan框架,将会是全球推理之源,无需数据训练,只需数据检索和校验。彻底颠覆概率云ai