在QObject上调用的槽的顺序

Jes*_*ogt 32 qt

我有一个QObject,有多个插槽连接到其中一个信号.在发出信号时,是否有一个命令可以调用每个插槽?

sep*_*p2k 51

在Qt v4.5及更早版本中:否,订单未定义,如此处的文档中所示:

如果多个插槽连接到一个信号,则当发出信号时,插槽将以任意顺序一个接一个地执行.

编辑:从版本4.6开始,这不再是真的.现在插槽将按照它们连接的顺序运行.现行文件的有关段落:

如果多个插槽连接到一个信号,则当发出信号时,插槽将按照它们已连接的顺序依次执行.

  • 好吧,抱歉,我并不是有意低估你的帖子。由于这个问题是我谷歌搜索的第一个结果,我想防止更多的读者感到困惑。 (2认同)

Yar*_*ych 11

根据Qt文件:

如果多个插槽连接到一个信号,则在发出信号时,插槽将按照它们已连接的顺序依次执行.

http://qt-project.org/doc/qt-4.8/signalsandslots.html

  • 没有错.取决于Qt版本. (2认同)