ImageVerifierCode 换一换
格式:DOCX , 页数:59 ,大小:29.54KB ,
资源ID:9009351      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9009351.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(电子万年历代码.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

电子万年历代码.docx

1、电子万年历代码/=/文 件 名:Calendar_Interface.c/功能描述: 月历界面/维护记录: 2007年6月17日/=#include SystemHeader.h#include string.hDATE Calendar_Date31;CALENDAR *pCalendar;/=/语法格式:INT8 Calendar_Month(INT16 Year, INT16 Month)/实现功能:(内部函数)对指定月中的每天进行计算,填充Calendar_Date数组/参数: Year: 年/ Month: 月/返回值: 无/=INT8 Calendar_Month(INT16 Ye

2、ar, INT16 Month) INT8 Ret; INT16 i; Ret = Date_GetMonthDays(Year, Month); for(i=1; i=Ret; i+) if(Date_Generate(Year, Month, i, &Calendar_Datei-1)!=0) break; if(iBGImage); / 背景图片 TFT_SetChineseFont(&wCalendar, 0); / 题头 TFT_SetAsciiFont(&wCalendar, 0); TFT_SetColor(&wCalendar, pCalendar-HeadColor); TF

3、T_SetBGColor(&wCalendar, 0); TFT_SetTextPos(&wCalendar, 20, 0); TFT_Print(&wCalendar, %d年%d月, Year, Month); TFT_SetTextPos(&wCalendar, 120, 0); TFT_Print(&wCalendar, 农历%s年(%s年), Calendar_Date0.GanZhiYearStr, Calendar_Date0.AnimalStr); TFT_SetColor(&wCalendar, pCalendar-TableHeadColor); / 星期 for(i=0;

4、 iFirstWeekDay+i)%7)*40 + 12; TFT_SetTextPos(&wCalendar, Tempx, 24); TFT_Print(&wCalendar, %s, T_WeekdayStri); Tempy = 41; TFT_SetAsciiFont(&wCalendar, 1); TFT_SetChineseFont(&wCalendar, 1); for(i=0; iFirstWeekDay+Calendar_Datei.Weekday)%7)*40+1; TFT_SetColor(&wCalendar, pCalendar-TodayColor); TFT_R

5、ectangle(&wCalendar, Tempx, Tempy, Tempx+38, Tempy+38, PAINT_SOLID); TempColor = pCalendar-CommonColor; if( Calendar_Datei.Weekday=0 | Calendar_Datei.Weekday=6) TempColor = pCalendar-WeekendColor; if( (Month=1 & i=0) / 元旦、五一、十一、春节 | (Month=5 & i=0) | (Month=10 & i=0) | (Calendar_Datei.LunarMonth=1 &

6、 Calendar_Datei.LunarDay=1) ) TempColor = pCalendar-WeekendColor; if(iFirstWeekDay+Calendar_Datei.Weekday)%7)*40 + 14; else / 两位数 Tempx = (7-pCalendar-FirstWeekDay+Calendar_Datei.Weekday)%7)*40 + 8; TFT_SetTextPos(&wCalendar, Tempx, Tempy); TFT_SetColor(&wCalendar, TempColor); TFT_Print(&wCalendar,

7、%d, i+1); TempColor = pCalendar-LunarColor; if(Calendar_Datei.Fu&0x00FF)=1) / 伏 strcpy(TempStr, Calendar_Datei.FuStr); TempStr4 = 0; TempColor = pCalendar-SpecialColor; if(Calendar_Datei.Jiu&0x00FF)=1) / 九 strcpy(TempStr, Calendar_Datei.JiuStr); TempStr4 = 0; TempColor = pCalendar-SpecialColor; if(C

8、alendar_Datei.SolarTerm!=-1) / 节气 TempColor = pCalendar-SpecialColor; strcpy(TempStr, Calendar_Datei.SolarTermStr); if(Calendar_Datei.LunarFestivalStr0!=0) / 农历节日 TempColor = pCalendar-SpecialColor; strcpy(TempStr, Calendar_Datei.LunarFestivalStr); if(Calendar_Datei.FestivalStr0!=0) / 公历节日 TempColor

9、 = pCalendar-SpecialColor; strcpy(TempStr, Calendar_Datei.FestivalStr); if(TempColor=pCalendar-LunarColor) / 普通农历 if(Calendar_Datei.LunarDay=1) / 初一显示月号 strcpy(TempStr, Calendar_Datei.LunarMonthStr); if(strlen(TempStr)FirstWeekDay+Calendar_Datei.Weekday)%7*40 + 8; else / 三个字 Tempx = (7-pCalendar-Fir

10、stWeekDay+Calendar_Datei.Weekday)%7*40 + 2; TFT_SetColor(&wCalendar, TempColor); TFT_SetTextPos(&wCalendar, Tempx, Tempy+24); TFT_Print(&wCalendar, TempStr); if(Calendar_Datei.Weekday=(pCalendar-FirstWeekDay+6)%7) / 换行 Tempy += 40; if(Tempy=240) Tempy = 41; /=/语法格式:INT16 Calendar_GetKey(INT16 x, INT

11、16 y)/实现功能:判断坐标是否落在功能按钮上/参数: x: x坐标/ y: y坐标/返回值: 键值/=INT16 Calendar_GetKey(INT16 x, INT16 y) INT16 Tempx, Tempy; INT16 Ret=-1; Tempx = x; Tempy = y; if(Tempx=0 & Tempx=40 & Tempy=283 & Tempx=4 & Tempy=283 & Tempx=44 & Tempy=283 & Tempx=91 & Tempy=283 & Tempx=131 & Tempy=283 & Tempx=196 & TempyFirstW

12、eekDay + 1; if(DayFirstWeekDay; / 最后一格的日期 if(Date_GetMonthDays(Calendar_Date0.Year, Calendar_Date0.Month)Temp) Day = Key + Temp + 1; if(DayDate_GetMonthDays(Calendar_Date0.Year, Calendar_Date0.Month) return; pDate = &Calendar_DateDay-1; TFT_CreateWindow(&wDay, 20, 60, 259, 219, RGB(0xE0, 0xE0, 0xE0)

13、; TFT_SetColor(&wDay, RGB(0xF0, 0x30, 0x00); TFT_Rectangle(&wDay, 0, 0, 239, 159, PAINT_HOLLOW); TFT_SetColor(&wDay, COLOR_MAGENTA); TFT_SetTextPos(&wDay, 10, 10); TFT_Print(&wDay, %4d年%d月%d日 星期%s, pDate-Year, pDate-Month, pDate-Day, T_WeekdayStr(unsigned char)(pDate-Weekday); TFT_SetTextPos(&wDay,

14、10, 34); TFT_SetColor(&wDay, RGB(0x20, 0x20, 0x80); TFT_Print(&wDay, 星座:%s座, pDate-ZodiacStr); TFT_SetTextPos(&wDay, 10, 54); TFT_SetColor(&wDay, RGB(0x20, 0x20, 0x80); TFT_Print(&wDay, 生肖:%s, pDate-AnimalStr); TFT_SetTextPos(&wDay, 10, 74); TFT_SetColor(&wDay, RGB(0x20, 0x20, 0x80); TFT_Print(&wDay

15、, 农历:%s月%s, pDate-LunarMonthStr, pDate-LunarDayStr); TFT_SetTextPos(&wDay, 10, 94); TFT_SetColor(&wDay, RGB(0x20, 0x20, 0x80); TFT_Print(&wDay, 干支:%s年 %s月 %s日, pDate-GanZhiYearStr, pDate-GanZhiMonthStr, pDate-GanZhiDayStr); TFT_CreateWindow(&wFestival, 30, 180, 249, 209, RGB(0xE0, 0xE0, 0xE0); TFT_S

16、etTextPos(&wFestival, 0, 0); TFT_SetColor(&wFestival, COLOR_RED); if(pDate-FestivalStr0!=0) TFT_Print(&wFestival, %s , pDate-FestivalStr); if(pDate-LunarFestivalStr0!=0) TFT_Print(&wFestival, %s , pDate-LunarFestivalStr); if(pDate-SolarTerm != -1) TFT_Print(&wFestival, %s , pDate-SolarTermStr); if(p

17、Date-Fu != 0) TFT_Print(&wFestival, %s , pDate-FuStr); if(pDate-Jiu != 0) TFT_Print(&wFestival, %s , pDate-JiuStr); for(i=0; i1901) Year -= 1; break; case 101: / 下年 if(Year2100) Year += 1; break; case 102: / 上月 Month -= 1; if(Month=0) Month = 12; Year -= 1; if(Year 2100) Year = 2100; Month = 12; break; case 104: / 返回 return; default: Calendar_ShowDay(pCalendar, Key); break; if(Key!=-1) Calendar_Show(pCalendar, Year, Month); .闹铃部分。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1