微型小助手课程设计报告.docx

上传人:b****3 文档编号:12875567 上传时间:2023-04-22 格式:DOCX 页数:35 大小:1.72MB
下载 相关 举报
微型小助手课程设计报告.docx_第1页
第1页 / 共35页
微型小助手课程设计报告.docx_第2页
第2页 / 共35页
微型小助手课程设计报告.docx_第3页
第3页 / 共35页
微型小助手课程设计报告.docx_第4页
第4页 / 共35页
微型小助手课程设计报告.docx_第5页
第5页 / 共35页
点击查看更多>>
下载资源
资源描述

微型小助手课程设计报告.docx

《微型小助手课程设计报告.docx》由会员分享,可在线阅读,更多相关《微型小助手课程设计报告.docx(35页珍藏版)》请在冰豆网上搜索。

微型小助手课程设计报告.docx

微型小助手课程设计报告

石家庄铁道学院课程设计

“微型小助手”课程设计报告

 

单位工程力学分院(系)

专业电气信息类

学号20112288

学生姓名蓝辛波

指导教师王学军

 

完成日期2012年8月18日

摘要

随着社会的发展,人类生活的节奏越来越快,生活模式也越来越简洁,于是类似小助手的简洁工具也越来越受人们欢迎。

我们这次用到的软件是VisualBasic6.0企业版附sp6补丁,它具有面向对象的可视化设计工具,硬件驱动的编程机制,使用方便简单的集成开发环境,最简单的程序设计语言和强大的数据库与文件系统等多种优点。

本程序采用Command、Picturebox、Listbox、CommonDialog、timer等控件配合程序核心文件系统,设计并实现了时钟,计算器,记事本,电话本,相册,日历的功能。

我们本着方便、实用、简介的设计理念设计,尽量符合大众的习惯与需求。

本程序由刘勇超和蓝辛波共同合作完成,论文首先介绍了总体设计思路和制作过程涉及的相关技术,围绕程序功能是如何实现的,简单介绍程序是如何运行的。

 

关键词:

程序设计小助手计算器相册

时钟记事本电话本日历

 

目录

1.选题的意义……………………………………………………………4

2.系统功能需求分析……………………………………………………4

2.1系统概述……………………………………………………………………4

2.2系统的组成及各模块的功能………………………………………………4

2.3系统的运行环境……………………………………………………………4

3.系统设计………………………………………………………………5

3.1总体结构设计…………………………………………………………………5

3.2各界面设计思路………………………………………………………………5

4.系统实现………………………………………………………………6

4.1小助手主窗体设计及实现……………………………………………………6

4.2时钟功能设计和实现………………………………………………………7

4.3计算器功能设计及实现………………………………………………………10

4.4日历功能设计及实现…………………………………………………………14

4.5记事本功能设计及实现……………………………………………………15

4.6电话本功能设计及实现……………………………………………………18

4.7相册功能设计及实现…………………………………………………………21

5.总结…………………………………………………………………26

5.1程序设计总结…………………………………………………………………26

5.2存在的问题……………………………………………………………………27

参考文献………………………………………………………………27

致谢词…………………………………………………………………27

微型小助手

1.选题的意义

随着社会的发展,人类生活的节奏越来越快,生活模式也越来越简洁,所以人们越来越倾向于方便快捷的东西,像小助手里的计算器、记事本等就非常方便的满足人们随手使用的需求,所以我们选择了微型小助手。

在该程序的过程中,文件系统是我们的核心,以Do、for循环,工作函数为辅助,来完成总的程序设计,并采用了Listbox、picturebox、timer、CommonDialog等各种控件,熟练的将其掌握。

2.系统功能需求分析

1系统概述:

本程序由计算器,相册,时钟,记事本,通讯录和日历6部分组成,由一个主窗体将6部分连接起来,结构清晰,画面清新。

2各部分功能:

时钟功能:

显示一个带有时间走针的时钟以及当前的日期、星期、时间;

计算功能:

常见计算器的基本功能;

记事功能:

可记录每天的要事,具有查找与提醒功能;

相册功能:

可对相片进行分类浏览、添加、删除、保存、放大和缩小功能;

电话本功能:

可添加和删除联系人,具有检索功能;

万年历功能:

能查阅任意年月日期的日历。

3运行环境

 操作系统:

WindowsXP或windows7

内存要求:

128M以上

Cpu:

1gHz以上

硬盘空间:

200M以上

 

3.系统设计

1.总体结构设计

总体由小助手主窗体、时钟、计算器、记事本、电话本、相册和日历等窗体组成,主界面应用image控件美化背景,并用菜单将各个窗体连接起来具体如图:

2.各界面设计思路

我们在设计各个界面时,本着简介,清晰,和谐,美观,实用的设计理念设计,例如时钟,以白色为背景,使得整体效果和谐,清新。

我们以文件系统为核心设计理念,以大量函数与循环将程序结构建立起来,使得整个程序完整,连贯。

功能符合一般应用的要求,如电话本与相册的下一个,上一个按钮,非常实用方便,且符合大众思路,使得大众使用时得心应手。

4.系统实现

1.小助手主窗体界面设计及实现

PrivateSubdhb_Click()

Form6.Show

EndSub

PrivateSubForm_Load()

Label1.Caption="微型小助手"

Label1.FontSize=35

Label1.ForeColor=RGB(255,255,0)

EndSub

PrivateSubjsb_Click()

Form5.Show

EndSub

PrivateSubjsq_Click()

Form3.Show

EndSub

PrivateSubrl_Click()

form4.Show

EndSub

PrivateSubsz_Click()

Form2.Show

EndSub

PrivateSubxc_Click()

Form7.Show

EndSub

2.时钟功能的设计和实现

该时钟不仅具有一般时钟的基本功能,而且还具有年月日和星期几的功能,整体画面以白色为背景,干净明了,如图:

具体实现的代码如下:

Dimmlen,hlen,slen,r

Dimprex,prey,x2,y2

Dimxh,xm,xs,hr,mi,se,prehr,premi,prese

DimbsAsBoolean

Constpi=3.141592654

PrivateSubForm_Load()

Timer1.Interval=1000

Scale(-ScaleWidth/2,ScaleHeight/2)-(ScaleWidth/2,-ScaleHeight/2)

EndSub

Subdrawcircle()

Dimx,y,x1,y1,timeh

Form2.DrawMode=13

r=2000

Circle(0,0),r,vbBlue

timeh=-1

Fori=0To60

x=1950*Sin(i*pi/30)

y=1950*Cos(i*pi/30)

x1=1800*Sin(i*pi/30)

y1=1800*Cos(i*pi/30)

IfiMod5=0Then

DrawWidth=5

PSet(x,y)

CurrentX=x1-130

CurrentY=y1+50

timeh=timeh+1

Iftimeh>0ThenPrinttimeh

Else

DrawWidth=2

PSet(x,y)

EndIf

Nexti

DrawWidth=1

Line(0.3*r,100)-(0.65*r,-100),,B

CurrentX=0.35*r

CurrentY=80

PrintWeekdayName(Weekday(now))

CurrentX=-0.32*r+400

CurrentY=0.4*r-100

PrintYear(Date)&"年"

CurrentX=-0.32*r+400

CurrentY=-0.4*r

PrintMonth(Date)&"月"&Day(Date)&"日"

EndSub

PrivateSubTimer1_Timer()

DrawMode=16

DrawWidth=2

drawcircle

hlen=r*0.5

mlen=r*0.7

slen=r*0.8

hr=Hour(now)

hr=hrMod12

mi=Minute(now)

DrawWidth=2

DrawMode=13

xh=hr*5+mi/12

x2=hlen*Sin(xh*pi/30)

y2=hlen*Cos(xh*pi/30)

prehr=hr

Line(0,0)-(x2,y2),vbBlue

x2=mlen*Sin(mi*pi/30)

y2=mlen*Cos(mi*pi/30)

Line(0,0)-(x2,y2),vbBlue

se=Second(now)

x2=slen*Sin(se*pi/30)

y2=slen*Cos(se*pi/30)

Ifx2=0Andy2>0Then

DrawMode=10

DrawWidth=2

xh=prehr*5+(mi-1)/12

x2=mlen*Sin(xh*pi/30)

y2=mlen*Cos(xh*pi/30)

Line(0,0)-(x2,y2),Me.BackColor

DrawMode=13

x2=mlen*Sin((mi-1)*pi/30)

y2=mlen*Cos((mi-1)*pi/30)

Line(0,0)-(x2,y2),Me.BackColor

x2=slen*Sin(se*pi/30)

y2=slen*Cos(se*pi/30)

DrawWidth=1

DrawMode=10

Line(0,0)-(prex,prey),vbBlue

Line(0,0)-(x2,y2),vbBlue

Else

DrawWidth=1

DrawMode=10

Line(0,0)-(prex,prey),vbBlue

Line(0,0)-(x2,y2),vbBlue

EndIf

prex=x2

prey=y2

EndSub

 

3.计算器功能的设计和实现

该计算器具有一般计算器的功能,整体效果以按钮为主体,按键设置清晰明了,如图:

代码如下:

PublicyunsuanAsString

PublicnowAsDouble

PublicpreAsDouble

PrivateSubqingchu_Click()

Text1.Text=""

now=pre=0

EndSub

PrivateSubCommand1_Click(IndexAsInteger)

Text1.Text=Text1.Text&Command1(Index).Caption

now=Text1.Text

jia.Enabled=True

jian.Enabled=True

cheng.Enabled=True

chu.Enabled=True

fuhao.Enabled=True

genhao.Enabled=True

chengfang.Enabled=True

deng.Enabled=True

zhengxuan.Enabled=True

yuxuan.Enabled=True

zhengqie.Enabled=True

duishu.Enabled=True

zhishu.Enabled=True

ziranduishu.Enabled=True

EndSub

PrivateSubdian_Click()

Ifnow=0Then

Text1.Text="0."

Else

Text1.Text=Text1.Text&"."

EndIf

EndSub

PrivateSubfuhao_Click()

Ifnow<0Then

Text1.Text=-now

now=-now

Else

Text1.Text="-"&Text1.Text

now=-now

EndIf

Ifnow<0Then

genhao.Enabled=False

Else

genhao.Enabled=True

EndIf

EndSub

PrivateSubjia_Click()

Text1.Text=""

yunsuan="+"

pre=now

now=0

EndSub

PrivateSubjian_Click()

Text1.Text=""

yunsuan="-"

pre=now

now=0

EndSub

PrivateSubcheng_Click()

Text1.Text=""

yunsuan="*"

pre=now

now=0

EndSub

PrivateSubchu_Click()

Text1.Text=""

yunsuan="/"

pre=now

now=0

EndSub

PrivateSubdeng_Click()

Ifyunsuan="+"Then

now=pre+now

Text1.Text=now

ElseIfyunsuan="-"Then

now=pre-now

Text1.Text=now

ElseIfyunsuan="*"Then

now=pre*now

Text1.Text=now

ElseIfyunsuan="/"Then

now=pre/now

Text1.Text=now

Else

Text1.Text="pressACtocontinue"

EndIf

Ifnow<0Then

genhao.Enabled=False

Else

genhao.Enabled=True

EndIf

EndSub

PrivateSubgenhao_Click()

Text1.Text=Sqr(now)

now=Sqr(now)

EndSub

PrivateSubchengfang_Click()

DimiAsInteger

DimjAsDouble

j=now

now=1

Fori=1Toj

now=now*10

Nextj

Text1.Text=now

EndSub

PrivateSubyuxuan_Click()

Text1.Text=Cos(now*3.1415926/180)

now=Cos(now*3.1415926/180)

EndSub

PrivateSubzhengqie_Click()

Text1.Text=Tan(now*3.1415926/180)

now=Tan(now*3.1415926/180)

EndSub

PrivateSubzhengxuan_Click()

now=now*3.1415926/180

Text1.Text=Sin(now)

now=Sin(now)

EndSub

PrivateSubduishu_Click()

Text1.Text=Log(now)/Log(10)

now=Log(now)/Log(10)

EndSub

PrivateSubzhishu_Click()

Text1.Text=Exp(now)

now=Exp(now)

EndSub

PrivateSubziranduishu_Click()

Text1.Text=Log(now)

now=Log(now)

EndSub

4.日历功能的设计和实现

该日历不仅具有普通日历的一般功能,而且具有查询日历的功能,供大家是方便使用,如图:

代码如下:

PrivateSubCommand1_Click()

Form8.Show

EndSub

PrivateSubCommand2_Click()

form4.Hide

Form1.Show

EndSub

 

PrivateSubForm_Load()

Text1.Text=Weekday(Date,vbMonday)

Text2.Text=Year(Date)

Text3.Text=Month(Date)

Text4.Text=Day(Date)

x=Val(Text1.Text)

SelectCasex

Case1

Text1.Text="一"

Case2

Text1.Text="二"

Case3

Text1.Text="三"

Case4

Text1.Text="四"

Case5

Text1.Text="五"

Case6

Text1.Text="六"

Case7

Text1.Text="日"

EndSelect

EndSub

PrivateSubForm_KeyPress(KeyAsciiAsInteger)

IfKeyAscii=27Then

End

EndIf

EndSub

PrivateSubTimer1_Timer()

Text5.Text=Hour(now)&":

"&Minute(now)&":

"&Second(now)

EndSub

查询日历

 

PrivateSubForm_KeyPress(KeyAsciiAsInteger)

IfKeyAscii=27Then

End

EndIf

EndSub

PrivateSubForm_Load()

Calendar1.Year=Year(Date)

Calendar1.Month=Month(Date)

Calendar1.Day=Day(Date)

EndSub

5.记事本功能的设计和实现

该记事本具有到点提醒功能,还具有保存与查找功能,如图:

代码如下:

PublicqAsString,pAsString

PublicxAsString,mylineAsString

PubliciAsInteger,jAsInteger

PrivateSubCommand1_Click()

IfText2.Text=""OrText3.Text=""OrText4.Text=""OrText5.Text=""OrText6.Text=""Then

MsgBox("请输入提醒时间")

EndIf

Open"e:

\jishiben.txt"ForAppendAs#1

Print#1,Text1.Text&Text2.Text&"年"&Text3.Text&"月"&Text4.Text&"日"&Text5.Text&":

"&Text6.Text

Close#1

Text1.Text=""

Text2.Text=""

Text3.Text=""

Text4.Text=""

Text5.Text=""

Text6.Text=""

Text1.SetFocus

EndSub

 

PrivateSubCommand2_Click()

WithCommonDialog2

.FileName="e:

\jishiben.txt"

.Filter="*.doc:

*.txt"

.ShowOpen

EndWith

EndSub

PrivateSubCommand3_Click()

Form5.Hide

Form1.Show

EndSub

PrivateSubForm_Load()

Timer1.Interval=60000

 

EndSub

 

PrivateSubTimer1_Timer()

Open"e:

\jishiben.txt"ForInputAs#1

WhileNotEOF

(1)

LineInput#1,myline

j=Len(myline)

Fori=1Toj

x=Mid(myline,i,1)

IfIsNumeric(x)=TrueThen

ExitFor

EndIf

Nexti

p=Left(myline,i-1)

q=Right(myline,j-i+1)

Ifq=Year(Date)&"年"&Month(Date)&"月"&Day(Date)&"日"&Hour(Time)&":

"&Minute(Time)Then

MsgBoxp&"时间到了"

WithCommonDialog1

.FileName="e:

\快乐星猫.mp3"

.Filter="*.mp3;*.avi;*.wma"

WindowsMediaPlayer1.URL=.FileName

EndWith

WindowsMediaPlayer1.Controls.play

EndIf

Wend

Close#1

EndSub

6.电话本功能的设计和实现

我们设计的电话本具有分类查找功能,和一般电话本记录功能,如图所示:

代码如下:

PrivateTyperecdhb

recdhbxmAsString*10

recdhbhmAsString*

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

当前位置:首页 > 自然科学 > 生物学

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

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