QT 如何将程序隐藏为小图标
时间: 2024-03-22 09:37:54 浏览: 19
在 Qt 中,可以通过使用 QSystemTrayIcon 类来将程序隐藏为小图标。这个类可以在系统托盘区域显示一个图标,并提供了一些信号和槽函数来实现程序与用户的交互。
首先,在你的窗口类中创建 QSystemTrayIcon 对象,例如:
```cpp
QSystemTrayIcon* trayIcon = new QSystemTrayIcon(this);
```
然后,将图标设置为你想要显示的图标:
```cpp
QIcon icon(":/icon/youricon.png");
trayIcon->setIcon(icon);
```
接着,将 QSystemTrayIcon 对象添加到系统托盘区域:
```cpp
trayIcon->show();
```
最后,你可以在 QSystemTrayIcon 对象中实现一些槽函数来响应用户的操作。例如,当用户单击图标时,可以显示程序的主窗口:
```cpp
connect(trayIcon, &QSystemTrayIcon::activated, this, [=](QSystemTrayIcon::ActivationReason reason){
if (reason == QSystemTrayIcon::Trigger) {
this->show();
this->activateWindow();
}
});
```
当用户右击图标时,可以弹出菜单:
```cpp
QMenu* menu = new QMenu(this);
menu->addAction("Option 1");
menu->addAction("Option 2");
trayIcon->setContextMenu(menu);
```
通过这些操作,你就可以将程序隐藏为小图标了。