《Visual Basic程序设计项目化教程》项目10 制作简单时钟课件

上传人:我*** 文档编号:145246626 上传时间:2020-09-18 格式:PPT 页数:20 大小:127KB
返回 下载 相关 举报
《Visual Basic程序设计项目化教程》项目10 制作简单时钟课件_第1页
第1页 / 共20页
《Visual Basic程序设计项目化教程》项目10 制作简单时钟课件_第2页
第2页 / 共20页
《Visual Basic程序设计项目化教程》项目10 制作简单时钟课件_第3页
第3页 / 共20页
《Visual Basic程序设计项目化教程》项目10 制作简单时钟课件_第4页
第4页 / 共20页
《Visual Basic程序设计项目化教程》项目10 制作简单时钟课件_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《《Visual Basic程序设计项目化教程》项目10 制作简单时钟课件》由会员分享,可在线阅读,更多相关《《Visual Basic程序设计项目化教程》项目10 制作简单时钟课件(20页珍藏版)》请在金锄头文库上搜索。

1、Visual Basic 程序设计项目化教程,主编 管小清 郭贺彬,项目十 制作简单时钟,项目目标: 本项目是制作一个带有时针、分针和秒针功能的简单时钟;利用计时器Timer控件控制时针、分针和秒针的转动;实现时钟的基本功能。掌握Timer控件的使用;掌握Now()函数的使用;掌握VB的图形画法等。 项目主要知识点: 1、Shape控件的使用方法 基本属性 特有属性 2、Line控件的使用方法 3、Timer控件的使用 重要属性 重要事件,项目十 制作简单时钟,4、日期、时间函数的使用 5、VB的图形画法 Circle方法 PSet方法 6、程序的模块化设计 项目实施步骤: 掌握相关基础知识

2、界面设计 窗体设计 控件属性设置 程序设计 编程初步 程序代码 程序调试,功能完善 保存项目工程,10.1 第1步:基础知识,10.1.1 Shape控件的使用方法 使用形状控件(Shape)可在窗体或其他控件容器中画出矩形、正方形、圆、椭圆、圆角矩形或圆角正方形。形状控件的Shape属性决定了它的图形样式,这个属性的所有可能取值都有对应的形状样式。 1、形状控件的常用属性 Left、Top、Width、Height、BorderWidth、BorderColor、BackColor、FillColor、BorderStyle。 Left、Top、Width和Height属性决定形状控件的位置

3、和大小,也可以用Move方法改变它的大小和位置。 BorderWidth属性设置图形边界宽度。它的值是以像素为单位的边线宽度。 BorderColor属性设置图形边界颜色。 BorderStyle属性设置边界线的类型。 FillColor属性设置图形的前景颜色。 如果要为图形填充颜色(背景)时,首先应该将属性FillStyle(填充方式)设置成1(透明),否则FillColor(前景色)的颜色会遮盖了背景色,达不到预期的目的。,10.1 第1步:基础知识,2、形状控件的特有属性 Shape属性 该属性用来设置图形的形状。 0Rectangle 矩形 1Square 正方形 2Oval 椭圆形

4、3Circle 圆形 4Rounded Rectangle 圆角矩形 5Rounded Square 圆角正方形 Shape属性的缺省值为0(矩形)。若选择3,则用Shape控件画出的矩形中画出一个圆(圆的直径是矩形的短边)。 BackStyle属性 该属性用来设置图形背景的风格 0Transparent(透明) 1Opaque(不透明) 缺省值为0。如果着色,显然要将BackStyle属性设置为“不透明”。 FillStyle属性 该属性用来设置图形填充的线形(风格或样式)。,10.1.2 Line控件的使用方法,格式:对象.LineStep(x1,y1)-Step(x2,y2),颜色,BF

5、 功能:在窗体或图片框上画出一条直线或一个矩形。对象缺省时,为窗体。 说明: (1)Step:可选项,第一个Step表示它后面的一对坐标是相对于当前坐标的偏移量,第二个Step表示它后面的一对坐标是相对于第一对坐标的偏移量。 (2)如果没有参数B,则是画一条直线。(x1,y1)与(x2,y2)是所画直线的左上角和右下角的坐标。 (3)如果有参数B,画一个矩形,指定参数F,表示要画的是一个实心的矩形。(x1,y1)与(x2,y2)是所画矩形的左上角和右下角的坐标。 10.1.3 Timer控件的使用,10.1.2 Line控件的使用方法,1、重要属性 Interval属性:该属性用来设置计时器事

6、件之间的间隔,以毫秒为单位,其取值范围为065536毫秒,因此最大的时间间隔不能超过65秒。60000毫秒为1分钟。如果把Interval属性值设为1000,则表明每秒钟发生一个计时器事件;如果希望每秒产生n个事件,则Interval属性的值设置为1000n。 计时器使用Interval属性以外,还可以使用Name属性和Enabled属性。 2、重要事件 Timer事件:是VB模拟实时计时器的事件。 使用计时器控件的操作步骤: 设置Timer控件的Interval属性值,这个属性决定了产生定时事件的时间间隔。该属性的单位是千分之一秒。例如,把Interval属性设置为500,则计时器将每隔0.

7、5秒将产生一次Timer事件。 编写响应计时器的Timer事件的事件过程,即在事件过程中编写需要定时执行的代码,完成各种定时任务。 通过设置计时器控件的Enabled属性为True或False来打开或关闭Timer事件的产生,10.1.4 日期、时间函数的使用,1、Now()函数 Now 返回代表当前日期和时间编码值该经常用作其它系统时钟函数的参数。 2、Day(Now) 返回当前的日期 3、WeekDay(Now) 返回当前的星期 4、Month(Now) 返回当前的月份 5、Year(Now) 返回当前的年份 6、Hour(Now) 返回小时(023) 7、Minute(Now) 返回分钟

8、(059) 8、Second(Now) 返回秒(059) 10.1.5 VB的图形画法 1、Circle方法 (1)、用Circle方法画圆 格式:对象名.CircleStep(x,y),半径,颜色 功能:在窗体或图片框上画圆。 说明:Step后面的数字表示相对于当前坐标的位移量。,10.1.4 日期、时间函数的使用,例如: Circle(2000,1000),500 Picture1.Circle(1000,400),500,QBColor(12) Circle Setp(200,300),800 第三行相对坐标的位移量,如果当前的坐标为(100,100),则圆心的坐标为(100+200,1

9、00+300),即(300,400)。以此为圆心,以800为半径,画一个圆。 (2)、用Circle方法画椭圆 格式:对象名.CircleStep(x,y),半径,颜色,纵横比 功能:在窗体或图片框上画椭圆。 说明:纵横比是椭圆两个轴长之比。,10.1.4 日期、时间函数的使用,例如: Circle(2000,1000),500,2 Picture1.Circle(1000,400),500,QBColor(12),0.5 (3)、用Circle方法画圆弧及扇形 格式:对象名.CircleStep(x,y),半径,颜色,起始角,终止角 功能:在窗体或图片框上画圆弧及扇形。 说明: 起始角与终止

10、角:为所画圆或椭圆的起始角度与终止角度,单位为弧度,取值为-22,缺省时,起始角为0,终止角为2。弧度增大方向是逆时针方向。 起始角、终止角均为正时,则只画圆弧;如果两者之一为负值时,不仅画圆弧,而且还会从圆心到负值的点画一条直线。,10.1.4 日期、时间函数的使用,2、PSet方法 格式(1):对象名.PSetStep(x,y),颜色 格式(2):对象名.PRsetStep(x,y),颜色 功能:在窗体或图片框上画出一个点。对象缺省时,为窗体。 说明: Step:可选项,选择该坐标(x,y)是相对坐标,否则是绝对坐标。 颜色:是指要画点的颜色。缺省时,PSet用“前景色”画点,而 PRse

11、t用“背景色”画点”,这是二者惟一区别。因此用PSet画点后可以用 PRset擦除。 例如: Picture1.PSet(1500,1000),RGB(255,0,255) 在图片框Picture1中(1500,1000)处画一个紫红色的点。,10.2 第2步:设计用户应用界面,1、任务一、在窗体上添加两个形状控件Shape1和Shape2, Shape1用来做表盘,Shape2用来做表盘的中心。将两控件分别如表10-1属性修改:,注意:尽量让Shape2位于Shape1的中心位置,10.2 第2步:设计用户应用界面,2、任务二、在表盘上添加四个标签Caption属性中分别输入:IX,XII,

12、III,VI并调整合适大小。 3、任务三、在窗体上添加Timer控件,并将Interval属性设置为:100 4、任务四、使用Line控件分别画三条线,Line1作为秒针、Line2作为分针、Line3作为时针。属性如表10-2所示:,表10-2 三条线的属性,注:画线的时候要将三条线的圆心设为(X2,Y2),也即由外向内画。可以将三条线的坐标(X2,Y2) 调整为相同的值。这样就与圆心重合了,10.2 第2步:设计用户应用界面,任务五、在窗体上添加标签用来显示系统时间。 界面设计完后如图10-1所示:,图10-1 界面设计图,10.3 第3步:程序设计,10.3.1 任务一:编写窗体的Loa

13、d事件 在“通用”过程中定义全局变量: Const pi=3.1415926 其他程序如下: Private Sub Form_Load() Line1.Tag = Line1.Y2 - Line1.Y1 Line2.Tag = Line2.Y2 - Line2.Y1 Line3.Tag = Line3.Y2 - Line3.Y1 Form1.Caption = Format(Time, Medium Time) 获取系统时间 t = Second(Time) 取系统时间中的秒数 Line1.X1 = Line1.X2 + Line1.Tag * Sin(pi * t / 30) Line1.

14、Y1 = Line1.Y2 - Line1.Tag * Cos(pi * t / 30) u = Minute(Time) 取系统时间中的分钟数,10.3 第3步:程序设计,Line2.X1 = Line2.X2 + Line2.Tag * Sin(pi * u / 30) Line2.Y1 = Line2.Y2 - Line2.Tag * Cos(pi * u / 30) v = Hour(Time) 取系统时间中的小时数 s = IIf(v = 12, v - 12, v) + u / 60 将24小时制转化成12小时制 Line3.X1 = Line3.X2 + Line3.Tag *

15、Sin(pi * s / 6) Line3.Y1 = Line3.Y2 - Line3.Tag * Cos(pi * s / 6) Label6.Caption = Date 将当前系统日期显示出来 End Sub,说明:以上程序语句是用来对时钟指针以及其他事件进行初始化, 要注意线绕某一点转动的语句编写。 Line控件的Tag属性的使用方法,10.3.2 任务二:编写Timer事件,程序代码如下: Private Sub Timer1_Timer() t = Second(Time) Line1.X1 = Line1.X2 + Line1.Tag * Sin(pi * t / 30) Lin

16、e1.Y1 = Line1.Y2 - Line1.Tag * Cos(pi * t / 30) If t = 0 Then Form1.Caption = Format(Time, Medium Time) u = Minute(Time) Line2.X1 = Line2.X2 + Line2.Tag * Sin(pi * u / 30) Line2.Y1 = Line2.Y2 - Line2.Tag * Cos(pi * u / 30) v = Hour(Time) s = IIf(v = 12, v - 12, v) + u / 60 Line3.X1 = Line3.X2 + Line3.Tag * Sin(pi * s / 6) Line3.Y1 = Line3.Y2 - Line3.Tag * Cos(pi * s / 6) Label6.Caption = Date End If End Sub,说明: 以上代码是对时钟的指针动态变化的语句,各程序段的功能参照上一事件理解。,10.3.2 任务二:编写Timer事件

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号