例如,在您的主窗口子类中研究实现winEvent()方法。
#include "Windows.h"
#include "Dbt.h"
bool MainWindow::winEvent(MSG *message, long *result)
{
if (message->message==WM_DEVICECHANGE)
{
ui->plainTextEdit->appendPlainText("WM_DEVICECHANGE message received");
if (message->wParam==DBT_DEVICEARRIVAL)
ui->plainTextEdit->appendPlainText("A new device has arrived");
if (message->wParam==DBT_DEVICEREMOVECOMPLETE)
ui->plainTextEdit->appendPlainText("A device has been removed");
}
return false;
}
我刚刚测试了以上的方法,将我的USB摄像机插入到系统中并将其移除,我确实在纯文本编辑中得到了合适的外观输出。当然,您应该在qt文档中看到关于winEvent()方法的更多信息。(有关何时从函数等返回false或true的信息)