QSystemTrayIcon 不响应双击事件
QSystemTrayIcon 产生的图标显示在 Linux XFCE4 系统的顶部状态条上,但是双击没有反应。检查程序没有发现问题,判断了 QSystemTrayIcon::DoubleClick 事件。在以前的 Linux 系统中没有这个问题,不知道是新 Linux 导致的,还是 XFCE4 导致的。
调试发现无论是双击还是单击,QSystemTrayIcon 捕获的事件总是 QSystemTrayIcon::Trigger,也就是说实际上无法区分单击还是双击。修改方法也简单,同时检查QSystemTrayIcon::Trigger 以及 QSystemTrayIcon::DoubleClick 事件即可。
在调试过程中遇到了另一个问题。手贱,update & upgrade 系统,结果 XFCE4 桌面变成黑色、应用程序窗体没有边框、顶部状态栏没了…… 搜索了一些信息,大概是 window 管理进程异常,简单重启系统无法解决。需要重启桌面:
xfwm4 --replace
另外,点击菜单“所有应用程序 – 设置 – 设置管理器 – 会话和启动”,再点击“当前会话”,选择 xfwm4 然后点击按钮“保存会话”即可。