qt中信号和槽的总结

转载 2007年09月28日 12:11:00
connect (sender,SIGNAL(signal),receiver,SLOT(slot));
1,一个信号可以被连接到多个槽。
connect(slider, SIGNAL(valueChanged(int)),
        spinBox, SLOT(setValue(int)));
connect(slider, SIGNAL(valueChanged(int)),
        this, SLOT(updateStatusBarIndicator(int)));
当这个信号被发射的时候,这些槽会一个一个的以任意的顺序被调用。 When the signal is emitted, the slots are called one after the other, in an arbitrary order.
2,多个信号可以被连接到一个槽。
connect(lcd, SIGNAL(overflow()),
        this, SLOT(handleMathError()));
connect(calculator, SIGNAL(divisionByZero()),
        this, SLOT(handleMathError()));
只要其中的一个信号被发射,这个槽就会被调用。When either signal is emitted, the slot is called.
3,一个信号可以被连接到另外一个信号。
connect(lineEdit, SIGNAL(textChanged(const QString &)),
        this, SIGNAL(updateRecord(const QString &)));
当第一个信号被发射时,第二个信号也会被发射,除此之外,信号到信号的连接和信号到槽的连接是难以区分的。When the first signal is emitted, the second signal is emitted as well. Apart from that, signal–signal connections are indistinguishable from signal–slot connections.
4,连接可以被断开。
disconnect(lcd, SIGNAL(overflow()),
           this, SLOT(handleMathError()));
This is rarely needed, because Qt automatically removes all connections involving an object when that object is deleted.
When connecting a signal to a slot (or to another signal), they must both have the same parameter types in the same order:
connect(ftp, SIGNAL(rawCommandReply(int, const QString &)),
        this, SLOT(processReply(int, const QString &)));

Exceptionally, if a signal has more parameters than the slot it is connected to, the additional parameters are simply ignored:
connect(ftp, SIGNAL(rawCommandReply(int, const QString &)),
        this, SLOT(checkErrorCode(int)));

If the parameter types are incompatible, or if the signal or the slot doesn't exist, Qt will issue a warning at run-time. Similarly, Qt will give a warning if parameter names are included in the signal or slot signatures.

QT信号和槽以结构体为参数传递复杂数据

QT 的信号和槽机制能十分方便的用来传输数据,但是如果数据种类比较多,分类比较多的时候,就需要更好地更高效的来传递数据的方法。以结构体作为参数是个很不错的选择。这几天写的程序正好需要以结构体来作为参数...
  • Bruce_0712
  • Bruce_0712
  • 2016年12月20日 19:37
  • 3757

QT信号和槽以结构体为参数传递复杂数据

QT信号和槽以结构体为参数传递复杂数据 转自 http://blog.csdn.net/hqyhqyhq/article/details/8025566‘ QT 的信...
  • skykingf
  • skykingf
  • 2013年01月31日 22:32
  • 8695

Qt中的信号与槽机制解析

注:要想使用Qt的核心机制信号与槽,就必须在类的私有数据区声明Q_OBJECT宏,然后会有moc编译器负责读取这个宏进行代码转化,从而使Qt这个特有的机制得到使用。 所谓信号槽,简单来说,就像是插销...
  • bzhxuexi
  • bzhxuexi
  • 2015年05月04日 17:44
  • 3491

QT信号和槽总结

1.一个信号可以对应多个槽,槽的执行顺序不确定。 2.多个信号可以对应一个槽,任何一个信号都会调用这个槽 3.一个信号可以与另一个信号连接,当第一个信号发射时,第二个信号也会发射 3.链...
  • wx2064
  • wx2064
  • 2017年02月08日 20:11
  • 105

Qt信号和槽的个人总结

1、connect [cpp] view plaincopy connect(sender,SIGNAL(signal()),receiver,SLOT(slot()));   ...
  • libaineu2004
  • libaineu2004
  • 2014年02月19日 10:04
  • 1120

Qt 的几个核心机制总结之 信号与槽

信号与槽 1.功能:用于对象之间的通信 2.传统的GUI如何实现对象之间通信的? 使用的是回调函数(指向某个函数的指针),相比之下信号与槽的机制较为灵活,但是这种灵活是以损失性能为前提的,只不过...
  • jimmy2013_1_1
  • jimmy2013_1_1
  • 2013年02月20日 22:27
  • 1133

QT信号与槽机制浅析

  • 2017年11月29日 11:34
  • 17KB
  • 下载

关于QT多线程子线程使用信号和槽

  • 2018年01月03日 13:35
  • 1KB
  • 下载

QT布局,信号和槽PPT

  • 2014年03月20日 08:42
  • 383KB
  • 下载

【QT】信号槽初实现

  • 2015年09月21日 13:48
  • 7.6MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:qt中信号和槽的总结
举报原因:
原因补充:

(最多只允许输入30个字)