3 Star 11 Fork 11

xin-yue / XQt6

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
XQTimeSelectDockWidget.h 1.97 KB
一键复制 编辑 原始数据 按行查看 历史
xin-yue 提交于 2023-09-08 13:25 . 模拟添加图表查看
#ifndef XQTIMESELECTDOCKWIDGET_H
#define XQTIMESELECTDOCKWIDGET_H
#include"XQHead.h"
#include"XQDockWidget.h"
//时间间隔
enum class TimeInterval
{
null,//没选中
oneWeek,//一周
oneMonth,//一月
threeMonth,//三月
sixMonth,//六月
oneYear,//一年
threeYear,//三年
fiveYear,//近五年
thisYear,//今年来
hitherto,//至今
userDefined//用户自定义的
};
//时间选择浮动小部件
class XQTimeSelectDockWidget :public XQDockWidget
{
Q_OBJECT
public:
XQTimeSelectDockWidget(QWidget* parent = nullptr);
XQTimeSelectDockWidget(const QString& title, QWidget* parent = nullptr);
~XQTimeSelectDockWidget();
public://获取一些信息
QDateTimeEdit* startDateTimeEdit()const;
QDateTimeEdit* endDateTimeEdit()const;
TimeInterval selectTimeType()const;
QDateTime startDateTime()const;
QDateTime endDateTime()const;
//根据传入的时间根据选中的时间间隔类型往前推QDateTime
QDateTime selectDateTime(QDateTime time);
public://设置
void timeButtonPressed(TimeInterval time);
//设置时间
void setStartTime(const QDateTime& startTime);
void setEndTime(const QDateTime& endTime);
signals://信号
void selectTime(TimeInterval time);
protected://初始化
virtual void init();
virtual void init_ui();
virtual void init_timeGroup();
virtual void init_userGroup();
protected://信号事件处理
//事件按钮按下
void timeButtonPressed(int id);
//表格弹出菜单
//virtual void contextMenuRequested();
//停靠位置改变
virtual void locationChanged(Qt::DockWidgetArea area);
protected:
QBoxLayout* m_timeLayout = nullptr;//时间选择组
QBoxLayout* m_userLayout = nullptr;//用户选择组
QPushButton* m_selectTimeBtn = nullptr;//当前选中的时间按钮
QButtonGroup* m_timeButtons = nullptr;//按钮组
QDateTimeEdit* m_startDateTime = nullptr;//开始日期选择
QDateTimeEdit* m_endDateTime = nullptr;//开始日期选择
QPushButton* m_userDefinedBtn = nullptr;//自定义统计按钮
};
#endif // !XQTimeSelectDockWidget_H
1
https://gitee.com/xin___yue/XQt6.git
git@gitee.com:xin___yue/XQt6.git
xin___yue
XQt6
XQt6
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891