注:以下解决方案部分可能是基于Eclipse平台的。
1、编写自己的slots,在CPP文件中定义slots函数,编译出现:undefined reference to ’vtable for XXX‘
--> 删除三个Makefile文件,项目->清理 即可。
:qmake不会处理.cpp文档里的Q_OBJECT。
2、将QString转化为char*
--> 代码如下
——————————————————
QString str = "Test";
QByteArray QBA = str.toLatin1();
char *c_str = QBA.data();
——————————————————
:注意,str.toLatin1()的值必须像代码中一样存储一下,只是这样写:char *c_str = str.toLatin1().data()会造成指针引用不存在。
3、使用进度条等组件,响应循环中变量值改变的信号,中途没有反应
--> 在循环中插入“QApplication::processEvents();”这条语句。
: 单进程执行循环会阻塞,使用以上语句来避免。