代码拉取完成,页面将自动刷新
#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
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。