我正在尝试为我的Gui应用程序创建一个日志窗口。
我有名为sql和MyService的类
如何从类sql构建和发出信号以更新MyService日志窗口?
在main.cpp中:
MyService myService;
sql mySql;
QObject::connect(mySql, SIGNAL(updateMyLog(QString(msg))),myService,
SLOT(updateMyLog(QString(msg))));
修改
我在我的sql类中忘记了Q_OBJECT
和错误dosnt显示
error: C2665: 'QObject::connect' :
none of the 3 overloads could convert all the argument types
EDIT2:
我的updateMyLog插槽是:
public slots:
void updateMyLog(QString logmessage);
我得到了不同的错误:
QObject::connect: No such signal sql::updateMyLog(QString msg)
答案 0 :(得分:0)
似乎我应该这样做:
QObject::connect(&mySql, SIGNAL(updateMyLog(QString)),&myService,
SLOT(updateMyLog(QString)));
答案 1 :(得分:0)
如果你这样写它会起作用吗?
QObject::connect(&mySql, SIGNAL(updateMyLog(QString)), &myService,
SLOT(updateMyLog(QString)));
请注意,您应该将指针作为第一个和第三个参数传递。由于myService
不是指针,因此应该获取分配它的内存地址(指向它的指针)。