【问题标题】:Qt Connect signals with different arguments具有不同参数的 Qt Connect 信号
【发布时间】:2014-03-19 08:22:40
【问题描述】:

伙计们,我有一个简单的问题,正在阅读关于 connecting signals with slots with fewer arguments 的帖子,当然还有 Qt 文档。

但是,我不需要将信号与插槽连接。我实际上想用较少参数的信号连接信号

文档中关于槽的内容很清楚,但是信号呢?

这样安全吗?

感谢和干杯!

【问题讨论】:

  • 你试过了吗?我认为它应该工作:connect(SIGNAL(foo(int, int)), SIGNAL(goo(int)));
  • 是的,它有效,我试过了。但是,如果您在单独的线程中的小部件上设置图标,它也可以工作,但不能保证总是有效。我在找官方文档...
  • SLOT 比 SIGNAL 有更多的论据怎么样?

标签: c++ qt arguments signals-slots


【解决方案1】:

没有区别。接收信号可以具有比发射信号更短的特征。因为它可以忽略额外的参数。您可以连接如下信号:

signal(int, int, int)

TO SIGNAL 带有以下签名:

signal1(int, int, int)
signal2(int, int)
signal3(int)
signal4()

【讨论】:

  • 谢谢!我想知道为什么文档只提到插槽。你认为他们只是忘了提及信号吗?
  • 文档告诉我们连接没有区别。您可以将信号连接到信号的方式与将信号连接到槽的方式相同。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-11-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多