【发布时间】:2017-04-12 09:54:09
【问题描述】:
我的班级中有三个按钮小部件,我想将来自所有三个插槽的点击信号连接到一个插槽。这是我的语法:
QObject::connect(PtrLineedit1, SIGNAL(Clicked()), this, SLOT(myslot()));
QObject::connect(PtrLineedit2, SIGNAL(Clicked()), this, SLOT(myslot()));
QObject::connect(PtrLineedit3, SIGNAL(Clicked()), this, SLOT(myslot()));
但是上面的语法不起作用。我在我的 WizardPage 类之一中使用了上述语法。这个向导有三个页面,其中一个页面(类)有三个按钮,在这个类构造函数中我试图实现。我也用过“clicked()”,但没有运气
【问题讨论】:
-
你能详细说明“不工作”吗?
-
考虑重新表述/重构您的问题。以目前的形式,您的问题无法理解。
-
clicked() 应该可以工作,并且 Qt 支持将多个信号连接到一个插槽。检查您的程序输出。如果 qt 无法连接信号和插槽,它应该会通知您。检查这段代码是否执行(你说它在具有这些按钮的类的构造函数中,所以除非它在 if 子句中,否则它应该执行)
-
PtrLineedit听起来不像按钮...您使用的发件人是否正确? -
对不起,它是一个按钮,但命名错误,我想我有一个主向导,其中有这三个页面作为向导页面,我必须更改父小部件吗?当我尝试调试时,我无法到达并且该点被禁用并且在控制台中我也没有得到任何输出说无法连接