我有弹出窗口,有2个按钮,我想在使用时使用静态Methode中的那些按钮的SIGNAL和SLOT
connect(allbox->getAcceptButton(),SIGNAL(clicked()),this,SLOT(dosmt());
该程序崩溃任何想法如何解决这个问题。 谢谢你的帮助
答案 0 :(得分:1)
您必须编写一个调用静态方法的插槽
答案 1 :(得分:0)
您已经问过类似的question,答案是一样的:您不能在静态方法中使用this
,因此您必须传递一个dosmt()
的对象也可以插入它。
答案 2 :(得分:0)
class Test: public QObject
{
Q_OBJECT
...
public:
static void testMethod();
public slots:
void testSlot();
};
Test::Test()
{
QObject::connect(button, SIGNAL(clicked(), this, SLOT(testSlot()));
}
Test::testSlot()
{
Test::testMethod();
}
只是一个简短的例子,您必须连接SIGNAL和SLOT,因为Qt http://doc.qt.digia.com/qt/signalsandslots.html
记录了这一点。