Qt信号和插槽

时间:2011-11-07 23:35:56

标签: qt

您最多可以连接多个信号到一个插槽?如果不止一个你怎么能这样做?您可以连接多少个插槽信号?如果这些插槽的执行方式不止一个?如何为一个平台(Symbian)编写的Qt程序/应用程序可以在另一个平台上移植/执行

2 个答案:

答案 0 :(得分:5)

您可以使用常规方式(QObject::connect)轻松地将多个插槽连接到单个信号,然后在发出信号时按连接顺序调用。

同样可以将单个插槽连接到多个信号,然后在发出其中一个信号时调用。您甚至可以通过将信号连接到信号来链接信号,然后在发出源信号时自动发出信号。

Qt's excellent documentation可以很容易地获得这些信息。

可以连接到信号的插槽数量可能存在理论上的限制,但这个限制肯定超出任何实际意义。

虽然将应用程序从嵌入式系统(如Symbian)移植到桌面系统(如Windows)可能会涉及一些其他问题,但通常将Qt应用程序移植到另一个平台只需要重新编译/用于该平台,假设您没有在应用程序的其余部分使用任何与平台相关的代码,这在使用Qt时通常不是必需的。

答案 1 :(得分:1)

您可以根据需要将多个插槽连接到信号。它们将按照它们连接的顺序执行。

通常,如果您只使用qt而不使用其他平台相关API,那么在目标平台上重新编译它就足够了。但是不知道Symbian - 有时Symbian似乎有一些不同的规则。