QT 信号槽机制

核心函数为

QMetaObject::Connection QObject::connect(const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type = Qt::AutoConnection)


参数为

1.信号发生对象

2.信号发生对象的信号

3.槽对象

4.槽对象的槽函数

函数作用:连接信号和槽,使得信号发生对象发射信号发生时槽对象执行槽函数

1.信号发生对象/槽对象:const QObject* 类型,大部分qt有的组件都是QObject的子类,直接用就行

2.信号:信号是一个只有声明没有内容的函数,唯一的作用就是当调用发射时将参数发射到槽对象槽函数的参数里

3.槽函数:信号发射后执行的函数,参数数量类型顺序保持和信号一样

下面写一个例子,自建一个信号和槽进行验证

新建一个widget,加一个按键,转到槽函数

在类声明中新建一个信号和槽函数

信号固定有类型所以不用前缀

信号不需要内容定义,在槽函数定义里面写一个打印

使用pushbutton的clicked来发射我们定义的信号,发射的关键字为emit

connect连接信号和槽

注意:信号用SIGNAL()宏包起来,槽函数用SLOT()包起来,并且如果有参数要把参数列表类型完整的写入

执行,按button,执行

相关推荐

  1. Qt信号机制

    2024-07-22 08:34:03       32 阅读
  2. qt:使用信号机制传参

    2024-07-22 08:34:03       57 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-22 08:34:03       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-22 08:34:03       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-22 08:34:03       45 阅读
  4. Python语言-面向对象

    2024-07-22 08:34:03       55 阅读

热门阅读

  1. springboot项目中,项目打包时,跳过Test类

    2024-07-22 08:34:03       18 阅读
  2. 【【深入浅出FPGA内部资源CLB的解析】】

    2024-07-22 08:34:03       17 阅读
  3. MySQL8的备份方案——增量备份(CentOS)

    2024-07-22 08:34:03       14 阅读
  4. T-SQL编程基础

    2024-07-22 08:34:03       19 阅读
  5. B - Array Craft(cf960)

    2024-07-22 08:34:03       15 阅读
  6. Rust编程-模式匹配

    2024-07-22 08:34:03       19 阅读
  7. 软件测试面试

    2024-07-22 08:34:03       16 阅读
  8. Vbox虚拟机+Ubuntu motest测试drm

    2024-07-22 08:34:03       21 阅读