信号槽的使用错误

使用信号槽

connect(const QObject* sender,const char* signal,const QObject* receiver,
const char* member,Qt::ConnectionType type)

信号槽在类中使用首先必须有接收函数 member

如:

PushButton * button;

      LineEdit * edit;u

connect(button,SIGNAL(clicked()),edit,SLOT(executeFun()));

其中的executeFun()是在类中定义的槽函数

通常会显示如下错误 

1、信号槽不起作用,也不见编译器报错,运行错误:Object::connect:No such slot

是因为类中未定义 Q_OBJECT

2、加上Q_OBJECT 后显示这种错误:undefined reference to vtable for "XXX"

moc文件出问题,删除所有的.o文件,makefile文件,重新退出编译

3、出现这种错误:ld returned 1 exit status

原因:

1。应用程序的进程还在执行中,调出任务管理器关掉即可(这个比较常见)

2。代码中存在声明了,却没有定义的函数。

你可能感兴趣的:(错误)