qt4任务栏图标被单击显示窗口代码怎么写
在Qt中,可以使用QSystemTrayIcon类来创建任务栏图标,并可以通过clicked()信号来捕捉单击事件。在单击事件的槽函数中,可以显示/隐藏窗口。
以下是一个简单的示例代码:
#include <QApplication>
#include <QSystemTrayIcon>
#include <QMenu>
#include <QAction>
#include <QWidget>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// 创建任务栏图标
QSystemTrayIcon *trayIcon = new QSystemTrayIcon(QIcon(":/icons/icon.png"), nullptr);
trayIcon->show();
// 创建菜单
QMenu *menu = new QMenu();
QAction *showAction = new QAction("Show Window", menu);
menu->addAction(showAction);
// 创建窗口
QWidget *window = new QWidget();
window->setWindowTitle("My Window");
window->resize(200, 200);
// 连接单击事件
QObject::connect(trayIcon, &QSystemTrayIcon::clicked, [=]() {
if (window->isVisible()) {
window->hide();
} else {
window->show();
}
});
// 连接菜单动作
QObject::connect(showAction, &QAction::triggered, [=]() {
window->show();
});
return app.exec();
}
这个示例创建了一个带有图标的任务栏图标,并创建了一个菜单和一个窗口。当单击任务栏图标时,窗口将显示或隐藏。当单击菜单项“Show Window”时,窗口将显示。
原文地址: https://www.cveoy.top/t/topic/bWtZ 著作权归作者所有。请勿转载和采集!