欢迎来到天天文库
浏览记录
ID:57306521
大小:120.50 KB
页数:27页
时间:2020-08-11
《VB日历课程设计汇本报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、课程设计题目电子台历所选题目:电子台历难度:两星级**知识点:(1)非矩形窗口;(2)动态数组;(3)配置文件的读写;(4)图片的应用;(5)控件数组;(6)弹出式菜单的使用;(7)公共对话框控件;(8)多模块程序设计;(9)日期函数的使用前言“台历”是人们办公、学习的好帮手,人们把它置于案头用来查看日期、星期并可以方便地记事。本题目便编制一个“电子台历”程序,实现台历的一般功能。一、功能1、启动程序,显示一个圆角矩形窗口,并自动显示当前月的月历。星期从星期一开始排列,星期六和星期天以不同的颜色显示。2、鼠标单击可以查看不同的年份和月
2、份(左键增大,右键减小)。单击某个日期会在窗口右半边显示是否有记事。双击左下角的当前日期,可以使台历立即显示当月月历。3、在窗体的空白处右击,可以弹出一个菜单,可以对显示的日历日期的颜色、字体,窗体的背影图片加以修改。所有颜色、字体和背影图片的设置会自动保存,下次启动时会自动应用上一次的设置。4、从快捷菜单中选择“添加节日”或“添加记事”,可以分别实现对节日和记事的添加。在弹出的对话框中,能同时添加多个节日或记事。二、课程设计的详细设计1、程序的界面要圆角矩形窗口,该功能的实现用到了SetWindowRgn函数。SetWindowRg
3、n函数是属于API函数,在使用时要先声明。其代码如下:PrivateDeclareFunctionCreateRoundRectRgnLib"gdi32"(ByValX1AsLong,_ByValY1AsLong,ByValX2AsLong,ByValY2AsLong,_ByValX3AsLong,ByValY3AsLong)AsLongPrivateDeclareFunctionSetWindowRgnLib"user32"(ByValhWndAsLong,_ByValhRgnAsLong,ByValbRedrawAsBoolean
4、)AsLonghRgn=CreateRoundRectRgn(0,0,570,400,80,100)'创建圆角矩形区域CallSetWindowRgn(Me.hWnd,hRgn,True)2、年份、月份、日期和记事的显示依靠标签的Caption属性。其中,星期和日期的显示使用了控件数组,星期的显示使用了14个控件,日期的显示使用了74个控件。又把各个标签的背影设为透明,这样,便实现了日历界面的显示。1、为了使文字有浮于图片之上的立体感,使用了容相同但颜色伸浅不同且位置错开一点的两个控件来实现。功能的实现依靠以下代码:PublicSub
5、GetCaption()'产生标签的文字,达到字体有悬浮的效果DimjAsIntegerlblYear1.Caption=lblYear.CaptionlblYear1.FontName=lblYear.FontNamelblMonth1.Caption=lblMonth.CaptionlblMonth1.FontName=lblMonth.FontNamelblNow1.Caption=lblNow.CaptionlblNow1.FontName=lblNow.FontNameForj=37To73lblDay(j).Caption
6、=lblDay(73-j).CaptionNextlblShowNote1.Caption=lblShowNote.CaptionlblShowNote1.FontName=lblShowNote.FontNameForj=0To6lblWeek(13-j).FontName=lblWeek(j).FontNameNextEndSub2、本程序的主窗口使用了漂亮的图片作背影,样例共提供了4个.bmp格式的图片的加载使用以下代码来实现:PrivateSubPic1_Click()'日历背影图象变化frmCalMain.Picture=N
7、othingfrmCalMain.Picture=LoadPicture(App.Path&"picsp1.bmp")frmMenu.Pic1.Checked=TruefrmMenu.Pic2.Checked=FalsefrmMenu.Pic3.Checked=FalsefrmMenu.Pic4.Checked=FalsestrPicName="p1"EndSubPrivateSubPic2_Click()frmCalMain.Picture=NothingfrmCalMain.Picture=LoadPicture(App.Pa
8、th&"picsp2.bmp")frmMenu.Pic2.Checked=TruefrmMenu.Pic1.Checked=FalsefrmMenu.Pic3.Checked=FalsefrmMenu.Pic4.Ch
此文档下载收益归作者所有