首页 > 解决方案 > 我可以在系统托盘中运行我的 Qt 程序 (C++),但是如何从任务栏中删除它?

问题描述

我可以成功编译并运行在系统托盘中有图标的程序。这里有一个很好的例子来解释它: https ://doc.qt.io/qt-5/qtwidgets-desktop-systray-example.html

现在是我的问题:当我运行我的程序时,它的图标在任务栏中仍然可见。如何从任务栏中摆脱这个图标?

为什么它对我很重要?我的程序将是一个闹钟,所以它应该在桌面上可见,但它不应该占据任务栏上的位置。这就是为什么我决定将它放在系统托盘中。那么,如何从任务栏中摆脱它呢?

标签: qt

解决方案


在示例中,您只需取消选中相应的复选框,将visible属性设置为trueor false

示例中的小部件

复选框连接到属性的示例中的行:

connect(showIconCheckBox, &QAbstractButton::toggled, 
    trayIcon, &QSystemTrayIcon::setVisible);

然后你可以关闭窗口。由于这条线,应用程序仍将运行

QApplication::setQuitOnLastWindowClosed(false);

推荐阅读