zivyW 发表于 2017-4-13 17:05:21

Qt5.8 嵌入式平台 解决鼠标键盘不能热插拔问题

本帖最后由 zivyW 于 2017-4-13 17:05 编辑

   首先感谢 “没事多学点”的这篇文章 QT5.5.1 嵌入式平台 鼠标键盘不能热插拔问题解决 ,链接为http://blog.csdn.net/shengzhadon/article/details/51455361
    “没事多学点”作者在文章中对热插拔问题进行了详细讲述,而我就在这里直接上解决代码,如果想具体了解,请进入上面链接
   解决步骤:
      1.进入你的Qt库的devicediscovery目录,确定目录下面有qdevicediscovery_static_p.h 跟qdevicediscovery_static.cpp两个文件
       cd $QtDIR/5.8/Src/qtbase/src/platformsupport/devicediscovery
      

      2.编辑qdevicediscovery_static_p.h,
            vim qdevicediscovery_static_p.h
            添加头文件:
                     #include <QFileSystemWatcher>                  #include <QStringList>
         声明监听实例:QFileSystemWatcher *m_fileWatcher;                        声明上一次添加设备的列表:QStringList m_devices;            声明信号函数:private slots: void handleHotPlugWatch(const QString &path)
      

      3.编辑qdevicediscovery_static.cpp
         vim qdevicediscovery_static.cpp
         初始化监听变量与信号监听函数实现
         信号监听函数实现
         

         
          将QStringList devices;改成m_devices.clear();,用以清除上一次的值          将该函数中的devices全部改成m_devices,用以保存新的值。
               
    4.再次make/make install

      5.再次将交叉编译出来的qt移植到开发板上

      6.运行qt程序测试鼠标键盘热插拔,结果成功


bill 发表于 2017-4-13 17:14:20

很好,赞一个
页: [1]
查看完整版本: Qt5.8 嵌入式平台 解决鼠标键盘不能热插拔问题