QT的信号和槽

Posted xieqianli

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT的信号和槽相关的知识,希望对你有一定的参考价值。

最常用:一个信号与一个槽相连

connect(信号所属对象, SIGNAL(信号函数), 槽所属对象, SLOT(槽函数));

信号函数常用默认的,例如点击click(),文本改变textChanged(QString)等,而槽函数一般是由用户写的。

自定义信号写法

在类中添加信号函数:

class A:public QObject

signals:
  void fun(int x);    

发射信号:

emit fun(3);

信号函数必须是无返回值的函数,但可以带参数。

 

在槽函数中获得信号发射者

QSpinBox *spinBox = qobject_cast<QSpinBox *>(sender());

通过spinBox指针可以对发射者对象进行操作。

 

另外,还可以:

一个信号与一个信号相连

一个信号与多个槽相连

多个信号与一个槽相连

以上是关于QT的信号和槽的主要内容,如果未能解决你的问题,请参考以下文章

初见QT---信号和槽

Qt 6.x中的信号和槽介绍及示例

Qt 6.x中的信号和槽介绍及示例

qt信号和槽机制的问题

QT学习之信号和槽

Qt信号和槽