资源描述
屏幕保护程序
教学目的:
①产生屏幕保护程序的方法
②窗体的属性设置
③巩固键盘事件和计时器事件画圆命令
④RGB三原色函数
⑤随机数函数
教学过程:
1、 展示程序
展示屏幕保护程序
2、 分析程序
制作一个程序,程序随机的在form窗体上绘制一些大小不一样的圆。当按下Esc键的时退出程序。由于VB只能生成可执行程序(.exe)。不能直接生成屏幕保护程序。我们必须将VB生成的EXE程序的后缀名该为(.SCR)。并将更改后缀名的文件拷贝到WINDOWS\SYSTEM32文件夹下。然后通过设定屏幕保护的方法,将自己编写的屏幕保护程序设定为屏保。
由于屏幕保护程序为保护屏幕,一般背景为黑色。同时屏幕保护程序不是标准的窗口,没有最小化、最大化和关闭按钮。因此要设定相应窗体的界面。同时要编写事件,用于退出程序。
为了能随机在屏幕不同的位置绘制圆,因此要用到随机函数,产生随机的圆心坐标和半径。
最后要使用计时器,来触发绘圆的命令。
3、 界面设计
①设定窗体的BorderStyle属性为0,使得窗体没有标题栏等。成为一个适合屏幕保护程序的窗体。
②设定窗体属性Backcolor 为黑色。
③设定窗体属性 WindowState为 Maximized即让窗体最大化,盖住整个屏幕。
④添加计时器控件,并将Interval属性设定为200。即每隔1/5秒触发一次绘图命令。
4、 编写代码
① 首先应该做的工作是设定退出机制。本程序是利用KeyPress事件,当键盘上的ESC键按下后,触发退出代码。使得程序退出。KeyPress事件传递一个名称为KeyAscii的变量,其对应按下键的Ascii码值。Esc键的Ascii码值为27。我们用Unload Me命令实现退出。用Exit Sub退出事件。因此代码如下:
If KeyAscii=27 Then
Unload Me
Exit Sub
End if
② 设定计时器事件
产生随机数
Public Function random(ByVal lowerbound As Integer, ByVal upperbound As Integer) As Integer
random = Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
End Function
这里upperbound 和 lowerbound 是取随机数的上界和下界。例如 Random(100,500)是在100,500之间取一整数。
产生圆心坐标
圆心的x坐标取值范围在0 和整个屏幕的宽度。整个屏幕的宽度为Screen.Width。则对应的代码为x = random(0, Screen.Height)。用同样的方法取y坐标的值,屏幕的高度为Screen.Height。
x = random(0, Screen.Height)
y = random(0, Screen.Width)
产生随机的填充颜色
计算机中的颜色由红、绿、蓝三元素。VB中用RGB函数产生颜色。
例如:RGB(100,100,100)其中的三个参数是分别对应红绿蓝三个颜色的数值,每种颜色的取值范围是0到255之间。因此可用Random(0,255)取一个随机的数值。
fc = RGB(random(0, 255), random(0, 255), random(0, 255))
设定填充颜色、绘制圆
Me.FillColor = fc
Me.Circle (x, y), 800, fc
5、 调试程序,生成可执行程序,修改后缀名称为SCR,并拷贝到WINDOWS\SYSTEM32下。设置屏幕保护程序,测试程序效果。
6、 课堂练习
修改程序,完成代码编写。
展开阅读全文