【发布时间】:2013-05-24 05:28:04
【问题描述】:
我自己试图在 Qt 中编写一个程序,将函数连接到 Qt5 中的按钮。
#include <QApplication>
#include <QtGui>
#include <QPushButton>
static void insert()
{
qDebug() << “pressed”;
}
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
QPushButton *button=new QPushButton(“button”);
button->setGeometry(50,100,150,80);
QObject::connect(button,&QPushButton::clicked,insert());
button->show();
}
但是我遇到了类似的错误 main.cc:23:39:错误:在此上下文中 main.cc:23:55:错误:无效使用无效表达式 make: * [main.o] 错误 1
请帮忙……
【问题讨论】:
-
我对 qt 5 了解不多,但我认为您需要删除
insert()到insert中的括号。 -
我不了解 Qt 但您的函数调用
QObject::connect与此处给出的原型不匹配 Qt。 -
另外,我怀疑在
main函数末尾没有return app.exec()时这将起作用。