Browsed by
Tag: qt5

QSystemTrayIcon 不响应双击事件

QSystemTrayIcon 不响应双击事件

QSystemTrayIcon 产生的图标显示在 Linux XFCE4 系统的顶部状态条上,但是双击没有反应。检查程序没有发现问题,判断了 QSystemTrayIcon::DoubleClick 事件。在以前的 Linux 系统中没有这个问题,不知道是新 Linux 导致的,还是 XFCE4 导致的。

调试发现无论是双击还是单击,QSystemTrayIcon 捕获的事件总是 QSystemTrayIcon::Trigger,也就是说实际上无法区分单击还是双击。修改方法也简单,同时检查QSystemTrayIcon::Trigger 以及 QSystemTrayIcon::DoubleClick 事件即可。

在调试过程中遇到了另一个问题。手贱,update & upgrade 系统,结果 XFCE4 桌面变成黑色、应用程序窗体没有边框、顶部状态栏没了…… 搜索了一些信息,大概是 window 管理进程异常,简单重启系统无法解决。需要重启桌面:

xfwm4 --replace

另外,点击菜单“所有应用程序 – 设置 – 设置管理器 – 会话和启动”,再点击“当前会话”,选择 xfwm4 然后点击按钮“保存会话”即可。

could not find a Qt installation of ”

could not find a Qt installation of ”

最近重新搭建了一套 Debian 系统的开发环境,使用 qmake 编译 pro 文件时,提示了标题中的错误。检查qmake 文件,发现以下信息:

 /usr/bin/qmake -> qtchooser

这是因为系统提供了两套 Qt 开发环境,比如 Qt6 和 Qt5 等,因此需要指定默认采用哪一套。网络上的解决方案大多数比较粗暴,手工修改 /usr/bin/qmake 的文件链接,链接到真实的 qmake 文件即可。

但实际上系统提供了更简单的方式,比如我们默认采用 Qt5 的开发环境,则使用以下命令:

sudo apt install qt5-default