我的信号和槽在同一个线程中时就没有问题,一旦把持有槽的对象在另一个线程里面运行就有问题:
<quote>
app-stderr:Object::connect: No such signal Vehicle::requstQuery(Vehicle&,QString)
</quote>
我的信号和槽是这样定义的:
public:
signals:
void requestQuery(Vehicle & vehicle, const QString & sql);
private slots:
void querying(Vehicle & vehicle, const QString & sql);
发射信号:emit requestQuery(*this, "123456");
奇怪的是,错误提示里面却说我的信号是requstQuery(Vehicle&,QString),那个amp;是哪里来的?中文空格问题可以排除。
另外我也Q_DECLARE_METATYPE(Vehicle)了,qRegisterMetaType<Vehicle>("Vehicle");也执行成功了。
还可能有什么问题?
从昨天晚上一直到再现在都没搞定!
先谢了!!