3 Star 11 Fork 11

xin-yue / XQt6

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
XQTimerTaskSetupWidget.h 2.21 KB
一键复制 编辑 原始数据 按行查看 历史
xin-yue 提交于 2024-01-28 22:25 . 定时器修复一些bug
#ifndef XQTIMERTASKSETUPWIDGET_H
#define XQTIMERTASKSETUPWIDGET_H
#include"XQHead.h"
#include"XQTimerGroup.h"
#include<QScrollArea>
#include<QMap>
#define TimerTask_KEY "XQTimerTaskWidget"
//定时器任务设置小部件
class XQTimerTaskSetupWidget :public QScrollArea
{
Q_OBJECT
public:
XQTimerTaskSetupWidget(QWidget* parent = nullptr, bool AutoInit = true);
virtual ~XQTimerTaskSetupWidget();
public:
//获取配置信息
XQSettingsInfo* settingsInfo()const;
XQTimerGroup* timerGroup()const;
XQTimerTaskWidget* taskWidget(int id);
public:
void setTaskRoot(const QMap<QString, std::function<QString()>>& tasks);
//添加一个内置的预设任务
void addTaskRoot(const QString& name , std::function<QString()> func);
void addTaskWidget(XQTimerTaskWidget* widget);
void removeTaskWidget(XQTimerTaskWidget* widget);
void clearTaskWidget();
//读取本地数据
virtual void readLocalData();
//写入本地数据
virtual void writeLocalData();
protected://隐藏的函数
//初始化
virtual void init();
//绑定函数
virtual void bindFunc();
//显示菜单
void showMainContextMenu();
void showTaskContextMenu();
protected://槽函数
//add按钮触发添加一个
virtual void addTask();
//remove按钮触发删除一个
virtual void removeTask();
virtual void clearTask();
//设置显示的数量文本
void setShowCountText();
//定时器组状态检测
void timerState(TimerPollState state, int id = -1);
void setInfoText(const QString& text);
protected://初始化ui
virtual void init_ui();
virtual QLayout* init_OneRow();//第一行
protected://事件
//void showEvent(QShowEvent* event)override;
void closeEvent(QCloseEvent* event)override;
protected://变量
XQTimerTaskWidget* m_selectTask = nullptr;//当前选中的
QList<XQTimerTaskWidget*> m_taskList;//任务组
QBoxLayout* m_layout = nullptr;
QPushButton* m_addBtn = nullptr;//添加
QPushButton* m_removeBtn = nullptr;//删除
QPushButton* m_clearBtn = nullptr;//清空
QLabel* m_info = nullptr;//信息
QLabel* m_currentTime = nullptr;//现在时间
XQCircleLabel* m_taskCount = nullptr;//当前数量
QMap<QString, std::function<QString()>> m_taskGroup_root;//任务组
//QMap<QString, int> m_taskId;//加入定时器的任务
};
#endif
1
https://gitee.com/xin___yue/XQt6.git
git@gitee.com:xin___yue/XQt6.git
xin___yue
XQt6
XQt6
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891