3 Star 0 Fork 1

openEuler-competition / Summer2021-No.100 为openEuler的UKUI桌面增加或适配日程管理应用

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
customSystemTrayicon.h 1.45 KB
一键复制 编辑 原始数据 按行查看 历史
zhou 提交于 2021-08-15 14:22 . Mid check
/**
* from https://blog.csdn.net/csnd_ayo/article/details/56004234
* from https://blog.csdn.net/csnd_ayo/article/details/56004234
* from https://blog.csdn.net/csnd_ayo/article/details/56004234
* */
#ifndef CUSTOMSYSTEMTRAYICON_H
#define CUSTOMSYSTEMTRAYICON_H
#include <QSystemTrayIcon>
#include <QWidget>
class QAction;
class QMenu;
class customSystemTrayIcon : public QWidget
{
Q_OBJECT
public:
static customSystemTrayIcon* instance(QWidget* _this = nullptr);
void setTray(const QString& _name,
const QString& _icon,
const QString& _describe);
void setTray(const QString& _name,
const QString& _icon);
void setTray(const QString& _name);
void showTray(void);
void hideTray(void);
private:
explicit customSystemTrayIcon(QWidget *parent = 0);
void init(void);
void initMenu(void);
void initTray(void);
void initSignal(void);
private slots:
void trayActivatedEvent(QSystemTrayIcon::ActivationReason _action);
protected:
QString trayDescribe_;
private:
// 隐藏按钮(菜单)
QAction* hideAction_ = nullptr;
// 还原按钮(菜单)
QAction* restoreAction_ = nullptr;
// 退出按钮(菜单)
QAction* quitAction_ = nullptr;
// 根菜单
QMenu* menu_ = nullptr;
// 托盘实例
QSystemTrayIcon* trayObject_ = nullptr;
// 实例
static customSystemTrayIcon* self_;
};
#endif // CUSTOMSYSTEMTRAYICON_H
1
https://gitee.com/openeuler-competition/summer2021-100.git
git@gitee.com:openeuler-competition/summer2021-100.git
openeuler-competition
summer2021-100
Summer2021-No.100 为openEuler的UKUI桌面增加或适配日程管理应用
master

搜索帮助