Dr *_*Deo 1 c++ qt4 signals-slots
我是QT的新手,并试图创建一个自定义信号,告诉我已插入可移动磁盘. 这就是我做的
MainWindow.h
class MainWindow
{
QOBJECT
..
..
signals:
void qm_diskInserted(QString &);
public slots:
void addItemToList(QString &);
...
}
Run Code Online (Sandbox Code Playgroud)
MainWindow.cpp
void MainWindow::onDeviceChange(MSG * msg)
{
//code for detecting device here
QString &driveLetter= getDriveLetter(mask);
//try to emit QT signal here
emit qm_diskInserted(driveLetter);
}
MainWindow::MainWindow(QWidget * parent=NULL)
{
ui.setupUi(this);
QObject::connect(this, SIGNAL(qm_diskInserted(QString&)), this, SLOT(addItemToList(QString &));
}
void MainWindow::addItemToList(QString &)
{
//more stuff here
}
Run Code Online (Sandbox Code Playgroud)
某种方式插槽addItemToList()没有被调用,我必须手动调用它.
我究竟做错了什么?
谢谢.PS:
顺便问一下有什么方法可以调试信号吗?
即我怎么能确定发出信号?