1.mfc 编写万年历 怎么编 我是源码c源白痴 求指导
mfc 编写万年历 怎么编 我是白痴 求指导
我这里有现成的代码,可供你参考,码分主要是源码c源自绘的实现,附件给你两个版本的码分,均是源码c源MFC的(如下图)。第一个是码分阿里hsf源码下载摘自网上的程序,但经我改良,源码c源农历数据使用自创的码分算法,年份支持也大大增加(从公元年至年),源码c源并且修正了部分错误。码分
第二个是源码c源自创的,是码分MFC绘制出来的界面,支持两种视图。源码c源
代码都是码分在VS上编译通过的,如需要源代码,源码c源江湖英雄OL源码请追问。
//判断闰年,参数:年份,闰年,返回值:FALSE-失败,TRUE-成功static BOOL IsLeapYear(WORD dwYear,BOOL &bLeapYear);
//计算日期在年内的序数,参数:年,小K娱乐源码月,日,年内序数,返回值:FALSE-失败,TRUE-成功
static BOOL GetDaysNumInYear(WORD dwYear, WORD dwMonth, WORD dwDay,WORD &nDays);
//从年内序数计算月、日,参数:年,酷信源码产品年内序数,月,日,返回值:FALSE-失败,TRUE-成功
static BOOL GetDateFromDays(WORD dwYear, WORD nDays, WORD &dwMonth, WORD &dwDay);
//获取农历新年的公历年内序数,参数:农历年,返回值:农历新年的淮北离亳州源码公历年内序数
static short LunarGetNewYearOrdinal(WORD dwLunarYear);
//获取农历月的天数,参数:农历年,农历月,是否为闰月,返回值:该农历月的天数,为0代表参数无效
static WORD LunarGetDaysofMonth(WORD dwLunarYear,WORD dwLunarMonth,BOOL bLeapMonth);
//获取农历某一年的闰月情况,参数:农历年,返回值,该年的闰月月份,0表示无闰月
static WORD LunarGetLeapMonth(WORD dwLunarYear);
//公历转农历,参数:公历年、月、日,农历年、月、日,是否为闰月,返回值:FALSE-失败,TRUE-成功
static BOOL GetLunar(WORD dwYear,WORD dwMonth,WORD dwDay,WORD &dwLunarYear,WORD &dwLunarMonth,WORD &dwLunarDay,BOOL &bLeapMonth);
//农历转公历,参数:家历年、月、日,是否为闰月,公历年、月、日,返回值:FALSE-失败,TRUE-成功
static BOOL GetGregorian(WORD dwLunarYear,WORD dwLunarMonth,WORD dwLunarDay,BOOL bLeapMonth,WORD &dwYear,WORD &dwMonth,WORD &dwDay);
//得到指定年份的节气信息,首个是小寒
static BOOL GetJieQi(WORD dwYear,WORD dwMonth,WORD dwJieQi[2]);
//计算星期,返回-1表示输入的年月日不正确或者超出年份范围
static short GetDayOfWeek(WORD dwYear,WORD dwMonth,WORD dwDay);
//计算某个月的天数,返回天数,如果返回0表示年或月有误
static WORD GetDaysOfMonth(WORD dwYear,WORD dwMonth);
//把iYear年格式化成天干记年法表示的字符串
static void FormatLunarYear(WORD iYear, char *pBuffer);
//把iMonth格式化成中文字符串
static void FormatLunarMonth(WORD iMonth, char *pBuffer, BOOL bLeapMonth=FALSE);
//把iDay格式化成中文字符串
static void FormatLunarDay(WORD iDay, char *pBuffer);