农历日历 v1.0.4
载入中...
搜索中...
未找到
Public 成员函数 | 所有成员列表
CLunarCalendar::CTaskHandler类 参考abstract

使用者自定义任务接口更多...

#include <LunarCalendar.h>

类 CLunarCalendar::CTaskHandler 继承关系图:
CHandler

Public 成员函数

virtual uint onHandle (const QDate &date, QStringList &tasks)=0
 使用者自定义任务接口 。请遵守 农历位置显示类型优先级
 

详细描述

使用者自定义任务接口

用法:

在文件 LunarCalendar.h344 行定义.

构造及析构函数说明

◆ CTaskHandler()

CLunarCalendar::CTaskHandler::CTaskHandler ( )
inline

在文件 LunarCalendar.h347 行定义.

◆ ~CTaskHandler()

virtual CLunarCalendar::CTaskHandler::~CTaskHandler ( )
inlinevirtual

在文件 LunarCalendar.h348 行定义.

成员函数说明

◆ onHandle()

virtual uint CLunarCalendar::CTaskHandler::onHandle ( const QDate &  date,
QStringList &  tasks 
)
pure virtual

使用者自定义任务接口 。请遵守 农历位置显示类型优先级

参数
date日期
tasks任务列表。如果使用者有新任务,并需要在农历位置处显示内容,则加入到此列表中。
注解
  • 加入空字符或"":表示只显示圆点,不显示内容。
  • 不设置此值。只返回任务数。表示只显示圆点,不显示内容。
  • 请遵守 农历位置显示类型优先级
返回
未加入到 tasks 的任务数。不包括 tasks 中的任务数。
注解
在 tasks 中增加的新任务,则不计入返回值中, 如果没有其它的未加入 tasks 的任务,则返回 0。 否则返回未加入到 tasks 中的任务数。

例子:

uint CHandler::onHandle(/*in*/const QDate& d,
/*out*/QStringList& tasks) {
// 纪念日(以年为周期)
if(10 == d.month() && 25 == d.day())
{
tasks << "抗美援朝纪念日";
return 0;
}
int lunarYear = 0;
int lunarMonth = 0;
int lunarDay = 0;
CLunarCalendar::GetLunar(d, lunarYear, lunarMonth, lunarDay);
// 纪念日(以农历年为周期)
if(8 == lunarMonth && 22 == lunarDay)
{
tasks << "结婚纪念日";
return 0;
}
// 以月为周期
if(21 == d.day())
{
// 表示只显示圆点,不显示内容
return 1;
}
// 以周为周期
if(Qt::Wednesday == d.dayOfWeek())
{
// 表示只显示圆点,不显示内容。建议用上面的方式
tasks << QString();
return 0;
}
// 单个任务
if(2015 == d.year() && 10 == d.month() && 22 == d.day())
{
// 表示只显示圆点,不显示内容
return 1;
}
// 没有任务
return 0;
}
参见
使用者自定义任务接口 农历位置显示类型优先级 SetTaskHandle

该类的文档由以下文件生成: