VB报告简易日历小工具天气预报.docx

上传人:b****3 文档编号:27382229 上传时间:2023-06-30 格式:DOCX 页数:15 大小:60.99KB
下载 相关 举报
VB报告简易日历小工具天气预报.docx_第1页
第1页 / 共15页
VB报告简易日历小工具天气预报.docx_第2页
第2页 / 共15页
VB报告简易日历小工具天气预报.docx_第3页
第3页 / 共15页
VB报告简易日历小工具天气预报.docx_第4页
第4页 / 共15页
VB报告简易日历小工具天气预报.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

VB报告简易日历小工具天气预报.docx

《VB报告简易日历小工具天气预报.docx》由会员分享,可在线阅读,更多相关《VB报告简易日历小工具天气预报.docx(15页珍藏版)》请在冰豆网上搜索。

VB报告简易日历小工具天气预报.docx

VB报告简易日历小工具天气预报

 

VisualBasic2005程序设计

题目:

简易日历小工具

 

专业:

姓名:

学号:

指导老师:

二〇一一年五月二十五日

和C#比较它的优缺点

功能上的考虑

VB有而C#没有的功能有即时编译;静态事件绑定;条件异常捕获;COM兼容类;宽松的类型检查和变量声明;VisualBasicRuntime库;可选参数、带参数属性、模块等语言特征;动态数组。

功能更强大的是VB而不是C#。

性能上的考虑

VB和C#都生成一样的IL,因此理论上说不会有性能的差异。

但是因为支持即时编译,即一边书写代码一边编译。

这样可立刻发现语法错误,使调试变得更加容易。

但是这样一来VB就需要随时浏览整个代码文件,并把临时数据储存。

这造成生成的代码中常常具有冗余部分。

但也不能就此下结论说VB比C#慢,当用户选择打开优化并且以Release方式编译工程,就能得到与C#一样简短快速的代码。

代码风格和杂项问题

C#书写的代码比VB平均短小20%,VB中的关键字过长。

VB语言换行比C#麻烦,如果需要书写大量繁杂而长的代码,最好选择C#。

但VB的代码接近完整的英语,比C#更加易读。

文档和资源方面的考虑

在MSDN文档中,C#和VB是同等看待的。

所有文档和例子都是有VB和C#两份的。

因此,在寻求资源方面都不用担心。

互联网上的资源,C#要多于VB,特别是国内,有倾向于C#的潮流。

但是的资源VB较多。

国内缺乏资源是影响推广的重要原因。

设计题目

通过桌面小工具受到启发,决定做一个桌面小工具程序,设计题目为:

简易日历小工具

程序编译、部署与运行环境

程序的编译与部署环境:

本程序使用VB编程,编程环境在VisualBasic2005软件下进行,在创建并测试应用程序之后,在VisualBasic2005下创建自己的安装程序,将其发布。

程序的运行环境:

本程序在打包安装后,在WindowsXP及其以上操作系统下运行成功,但需注意的是,由于屏幕分辨率的问题,在不同硬件运行环境下,运行结果会有偏差。

设计目的与软件功能

设计目的

培养自己综合利用VB语言进行程序设计的能力,主要是培养自己利用VB的标准控件进行应用程序设计的技能。

软件要实现的功能

(1)、能够窗体加载自动提取并显示当前日期。

(2)、选择某一日期后,有特殊显示,比如添加方框。

添加一些特殊日期,比如国庆节等。

而且能够显示当天的信息提示。

其中“今日提示”四个字字体颜色闪烁显示。

(3)、在窗体下方显示所选择的日期。

(4)、根据所选年份和月份以及日期,确定当天为星期几,以及当日的提示。

比如2011年5月25日,确定后显示“星期三,天天快乐”。

(5)、能够实现北京时间的动态显示,能够判断并显示当前时间是凌晨、早上、上午、中午、下午、晚上等信息。

其中的“北京时间”四个字字体颜色闪烁显示。

(6)、能够自动获取本机IP显示本地的天气预报,并能提供查询窗口查询全国各地天气预报(需要本机联网)。

(7)、欢迎界面的设计,本程序中通过在程序界面的上方和下方各提供一个动态显示(左右移动)的“~欢迎您~”来美化欢迎界面。

软件流程图

4.3.1日期,时间以及时间查询功能模块:

调用

输入调用

判断

判断输出调用

 

判断

 

是,则输出特殊日

期信息

是,则输出当天日期提醒

否,则输出普通

日期信息

 

4.3.2天气预报功能模块:

调用

调用本机所在城市

调用

输出

 

4.3.3欢迎界面功能模块:

调用判断

调用是

软件功能的实施阶段

新建一个项目,项目的名称为“日历小工具”。

选中系统自动添加的窗体Form1,设置其Name属性的属性值为calendar(日历),设置Text属性的属性值为“日历时间天气查询”,Size属性的属性值为“667,485”,将MaxisizeBox属性值设置为“False”最后在“解决方案资源管理器”窗口的项目名称“日历小工具”上单击鼠标右键,选中弹出菜单中的“属性”命令,在“日历小工具属性页”对话框中将项目的启动对象改成“calendar”.

日历功能显示的实施阶段

在窗体calendar上添加一个Lable控件,Name属性值为lblTitle,Text属性值为“今日提示”;添加一个TextBox控件,BorderStyle属性值设置为“Fixed3D”,Font属性值设置为“楷体”,ForeColor属性值设置为“Blue”;添加一个MonthCalender控件,将Name的属性值设置为“mclOnly”,CalendarDimensions属性值设置为“1,2”FirstDayNumbers属性的属性值为“Sunday”,ForeColor属性的值设置为“0,0,192”,ShowWeekNumbers属性的值设置为“Ture”,TitleBackColor属性的值设置为“Teal”,TrailingForeColor属性的值设置为“Red”。

用鼠标双击calendar窗体,在代码编辑窗口上部的“类名”选择“mclOnly”控件对象,再“方法名称”中选择“DateSelected”事件。

在mclOnly_DateSelected过程中,输入以下代码:

=""

If=Then

=vbCrLf&"新的一周又开始了,天天快乐!

"

EndIf

If=Then

=vbCrLf&"今天是周末,玩的开心!

"

EndIf

If=4And=5Then

=vbCrLf&"清明节到了,看看已故的亲人吧!

"

EndIf

If=5And=1Then

=vbCrLf&"劳动节到了,带上家人出去散散心吧!

"

EndIf

If=7And=7Then

=vbCrLf&"七夕节到了,带上爱人出去浪漫一下吧!

"

EndIf

If=8And=15Then

=vbCrLf&"中秋节到了,快回去和家人吃个团圆饭吧!

"

EndIf

If=10And=1Then

=vbCrLf&"国庆节到了,带上家人出去散散心吧!

"

EndIf

If=""Then

=vbCrLf&vbCrLf&"天天快乐"

EndIf‘在不是特殊日期的日子统一输出天天快乐

北京时间显示的实施阶段

在窗体calendar上添加一个Lable控件,Name属性值为lblTitle1,Text属性值为北京时间;添加一个TextBox控件,BackColor属性值为“192,255,255”,ForeColor属性值为“Red”,Font属性值为“宋体,10.5pt,style=Blod”,Multiline属性值为“Ture”;添加一个Timer控件,Name属性值为“Timer1”,Enabled属性值为“True”,Interval属性值为“10”;添加一个Timer控件,Name属性值为“Timer3”,Enabled属性值为“True”,Interval属性值为“50”。

双击Timer1控件,输入以下代码:

(Timer1控件的功能是判断当前的时间段,以及调用系统时间,并把结果显示在TextBox2中)

vHour=Format(Now(),"HH")‘为vHour赋初值,其中HH的值是系统时间的小时

IfvHour>=0AndvHour<6ThenvState="凌晨"

IfvHour>=6AndvHour<7ThenvState="早上"

IfvHour>=7AndvHour<12ThenvState="上午"

IfvHour>=12AndvHour<14ThenvState="中午"

IfvHour>=14AndvHour<18ThenvState="下午"

IfvHour>=18AndvHour<24ThenvState="晚上"‘对当前时段的判断

=vbCrLf&vState&"好"&"现在时间是:

"&Format(Now,"hh:

mm:

ss")

‘将当前时段与系统时间显示在TextBox2中

双击Timer3控件,输入以下代码:

(Timer3控件的功能是使两个标签控件中的字符颜色闪烁显示)

If=Then

=

Else

=

EndIf‘使lblTitle中的字符颜色用红和蓝两种颜色交替闪烁显示

If=Then

=

Else

=

EndIf‘使lblTitle1中的字符颜色用红和蓝两种颜色交替闪烁显示

天气预报显示的实施阶段

添加WebBrowser控件,设置Name属性值为WebBrowser1,Location属性值设置为“401,243”,Size属性值设置为“248,166”。

用鼠标双击calendar窗体,在PrivateSubcalendar_Load(ByValsenderAs,ByValeAsHandles下面输入以下代码:

此处代码是为了使程序运行时“今日提示”的信息自动显示在TextBox1控件中。

=""

If=Then

=vbCrLf&"新的一周又开始了,天天快乐!

"

EndIf

If=Then

=vbCrLf&"今天是周末,玩的开心!

"

EndIf

If=4And=5Then

=vbCrLf&"清明节到了,看看已故的亲人吧!

"

EndIf

If=5And=1Then

=vbCrLf&"劳动节到了,带上家人出去散散心吧!

"

EndIf

If=7And=7Then

=vbCrLf&"七夕节到了,带上爱人出去浪漫一下吧!

"

EndIf

If=8And=15Then

=vbCrLf&"中秋节到了,快回去和家人吃个团圆饭吧!

"

EndIf

If=10And=1Then

=vbCrLf&"国庆节到了,带上家人出去散散心吧!

"

EndIf

If=""Then

=vbCrLf&vbCrLf&"天天快乐"

EndIf‘在不是特殊日期的日子统一输出天天快乐

此处代码是使用IE控件来调用网络的天气预报插件,达到天气预报的目的。

"&c=CHXX0008&l=zh-CHS&p=CMA&a=1&u=C&s=1&m=1&x=1&d=0&fc=FFFF00&bgc=00B0F0&bc=FFFF00&ti=1&in=1&li=2&ct=iframe")‘其中的网址是天气预报插件,由IE控件直接调用

欢迎界面显示的实施阶段

添加一个Timer控件,Name属性值设置为“Timer2”,Enable属性值设置为“True”,Interval属性值设置为“50”,添加两个Lable控件,Name属性值分别设置为“Lable1”与“Lable2”,ForeColor属性值都设置为“Red”,Text属性值都设置为“~欢迎您~”,Lable1的Location属性值设置为“3,10”,Lable2的Location属性值设置为“537,421”。

双击Timer2控件,输入以下代码:

(Timer2控件的功能是实现两个Lable中的“~欢迎您~”左右移动并且闪烁显示)

DimXAsInteger,YAsInteger‘定义两个变量X和Y

PrivateSubTimer2_Tick(ByValsenderAs,ByValeAsHandles

X=0

IfX=0Then

=+1

IfMod2=0Then=‘为偶数,显示红色

IfMod2<>0Then=‘为奇数,显示蓝色

If>528ThenX=1

WhileX=1

=10‘如果X=1,跳回到10

X=0

EndWhile

EndIf

Y=0

IfY=0Then

=-1

IfMod2=0Then=

IfMod2<>0Then=

If<10ThenY=1

WhileY=1

=528

Y=0

EndWhile

EndIf

EndSub

指定日期显示的实施阶段

添加一个Button控件,Location属性值设置为“401,192”,Name属性值设置为“Button1”,Text属性值设置为“点击此处查询日期信息”。

双击Button控件,输入以下代码(此处实现的是日期信息的查询,查询结果显示当日是星期几以及当日提示的信息)

DimyearAsInteger,mouthAsInteger,day1AsInteger,sAsDate,bAsInteger,rAsString‘定义变量

PrivateSubButton1_Click(ByValsenderAs,ByValeAsHandles

While1

year=InputBox("请输入年份",,Format(Now,"yyyy"))‘在新窗口输入年份

mouth=InputBox("请输入月份",,Format(Now,"mm"))‘在新窗口输入月份

day1=InputBox("请输入日期",,Format(Now,"dd"))‘在新窗口输入日期

s=DateSerial(year,mouth,day1)‘将日期赋值给s

b=Weekday(s)

SelectCaseb‘对b进行查找,按星期几输出对应结果

Case1

r="星期日"

Case2

r="星期一"

=vbCrLf&"新的一周又开始了,天天快乐!

"

Case3

r="星期二"

=vbCrLf&"天天快乐!

"

Case4

r="星期三"

=vbCrLf&"天天快乐!

"

Case5

r="星期四"

=vbCrLf&"天天快乐!

"

Case6

r="星期五"

=vbCrLf&"天天快乐!

"

Case7

r="星期六"

=vbCrLf&"今天是周末,玩的开心!

"

EndSelect

MsgBox(r&‘输出r和TextBox1的值

ExitSub‘跳出sub

EndWhile‘跳出循环

EndSub

软件运行测试与说明

生成安装程序步骤

6.1.1创建部署项目

1.在“文件”菜单上指向“添加项目”,然后选择“新建项目”。

2.在“添加新项目”对话框中,选择“项目类型”窗格中的“安装和部署项目”,然后选择“模板”窗格中的“安装项目”。

在“名称”框中键入“日历小工具安装程序”。

3.单击“确定”关闭对话框。

4.项目被添加到解决方案资源管理器中,并且文件系统编辑器打开。

5.在“属性”窗口中,选择ProductName属性,并键入日历小工具。

6.1.2添加Windows应用程序

1.双击“应用程序文件夹”。

在“操作”菜单上,指向“添加”,然后选择“文件”命令。

将“日历小工具”应用程序的可执行文件和相应的类库和组件添加进去。

2.在“日历小工具.exe”可执行文件上单击鼠标右键,在弹出的快捷菜单中选择“创建日历小工具快捷方式”命令,将快捷方式改名为“日历小工具”

3.把快捷方式剪切并粘贴到左边的“用户桌面”文件夹中。

4.在“用户的‘程序’菜单”文件夹上点右键,在弹出的快捷菜单中选“创建用户‘程序’菜单的快捷菜单”命令,然后将快捷菜单重命名为“日历小工具”。

5、右击左边的“应用程序文件夹”,选择“属性”,将属性中的DefaultLocation的路径中的Manufacturer去掉。

6、打开解决方案管理器,右击“日历小工具安装程序”文件,选择“属性”命令,单击“系统必备”按钮,选择“.NETFramework2.0”选项。

7、选择“生成”|“生成解决方案”命令,生成成功

6.1.3添加“卸载”功能

1.在添加应用程序项目的时候,多添加一个文件。

2.把文件名改为“卸载日历小工具.exe”

3.在“卸载日历小工具.exe”上右击,选择“创建卸载日历小工具的快捷方式”命令,重命名为“卸载日历小工具”。

4.在创建的“卸载日历小工具”的快捷方式上右击,选择“剪切”命令

5.选择“用户的‘程序’菜单”文件夹,右击,选择“粘贴”命令。

6.单击项目名称,在属性窗口找到ProductCode属性。

复制ProductCode的属性值。

7.单击“卸载日历小工具”快捷方式,在属性窗口中找到Arguments属性。

将ProductCode属性值粘贴到Arguments属性值里面。

8.选择“生成”命令,生成安装程序。

软件运行测试结果

6.2.3机房运行结果

如图6-1所示。

图6-1

6.2.2本机运行结果

如图6-2所示

图6-2

运行结果问题说明与功能描述

运行结果问题说明:

在不同计算机下运行结果不同,主要原因是电脑分辨率的问题,机房的计算机由于分辨率较低,造成两种运行结果的不同。

运行结果功能简介:

在运行结果中,“今日提示”与“北京时间”是红色和蓝色两种颜色交替显示,做出字体闪烁的效果。

上面的“~欢迎您~”像右移动,也是红色和蓝色两种颜色交替显示,做出字体闪烁的效果。

下面的“~欢迎您~”像左移动,其他效果同上。

其中的天气预报来自网络插件,能够进行全国天气预报的查询,而日历中的特殊日期能进行提示,能初步查询日期的信息。

设计心得

此次程序设计运行结果基本上达到了预期目标,通过此次设计,培养了自己的实际操作能力,在进行编程时,发现了不少问题,很多次都想放弃做日历小工具的想法,但是通过坚持查资料,多次的调试,使问题都得到了有效的解决,提高了自己处理问题的能力。

总的来说,此次程序设计使自己更好的了解了VisualBasic2005程序设计的操作和方法,为以后自己进行相关的操作打下一定基础。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 其它课程

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

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