【VB开源代码栏目提醒】:网学会员--在 VB开源代码编辑为广大网友搜集整理了:利用VB设计屏幕保护程序 - 编程语言绩等信息,祝愿广大网友取得需要的信息,参考学习。
陕西理工学院毕业设计论文 第 1 页 共 20 页 利用
VB设计屏幕保护程序 作者史文军 陕西理工学院物理系物
理学专业06级2班陕西 汉中 723001 指导教师刘东 摘要 本文主要
vb进行了介绍并利用
vb设计了一个简单的屏幕保护程序从屏幕保护的特点、设计的步骤到各模块的程序流程等几个方面设计了一个简单的屏幕保护程序。
关键词 屏幕保护vbapi Design a screen saver using
VB Author:Shi Wenjun Grade06Class062 Electronic Information Science and TechnologyDepartment of Physics Shaanxi University of TechnologyHanzhong 723000Shaanxi Instructor: Liu Dong Abstract: In this paper were introduced
vb vb design using a simple screen saver screen savers from the characteristics of the design steps to the process flow of each module and other aspects of the design of a simple screen saver. Key
words: screen saversVB 陕西理工学院毕业设计论文 第 2 页 共 20 页 引言 屏幕保护是为了保护显示器而设计的一种专门的程序。
当时设计的初衷是为了防止电脑因无人操作而使显示器长时间显示同一个画面导致老化而缩短显示器寿命。
另外虽然屏幕保护并不是专门为省电而设计的但一般Windows下的屏幕保护程序都比较暗大幅度降低屏幕亮度有一定的省电作用。
现行显示器分为两种——CRT显示器和LCD显示器屏幕保护程序对两种显示器有不同影响。
1 屏幕保护的作用 声光控定时照明电路的本质是替代传统机械开关的一款受声、光控制的自动控制电路。
在白天或者夜晚光线较亮或者夜晚光线较暗但无声音时电子开关断开灯灭只有在夜晚光线较暗并且声音达到一定强度的某个瞬间电子开关闭合灯亮短暂的声音信号消失后灯继续点亮一段时间后电子开关恢复断开状态灯灭等待下一次声音信号的触发。
1保护显像管 由于长时间静止的Windows画面会让CRT显示器的电子束持续轰击屏幕的某一处这样可能会造成对CRT显示器荧光粉的伤害所以使用屏幕保护程序会阻止电子束过多地停留在一处从而延长显示器的使用寿命。
2 保护个人隐私 若是你暂时离开电脑为了防范别人偷窥你存放在电脑上的一些隐私可以在屏幕保护设置中勾选“在恢复时使用密码保护”复选框然后单击“电源”按钮在“电源选项属性”对话框中选择“高级”选项卡并勾选“在计算机从待机状态恢复时提示输入密码”复选框即可。
这样当别人想用你的电脑时会弹出密码输入框密码不对的话无法进入桌面从而保护个人隐私。
3 省电 虽然屏幕保护并不是专门为省电而设计的但一般Windows下的屏幕保护程序都比较暗大幅度降低屏幕亮度有一定的省电作用。
4 屏幕保护程序对显示器的作用 CRT阴极射线显像管显示器的显像原理主要是由灯丝加热阴极阴极发射电子然后在加速极电场的作用下经聚焦极聚成很细的电子束在阳极高压作用下获得巨大的能量以极高的速度去轰击荧光粉层。
这些电子束轰击的目标就是荧光屏上的三原色。
为此电子枪发射的电子束不是一束而是三束它们分别受电脑显卡R、 G、 B三个基色视频信号电压的控制去轰击各自的荧光粉单元从而在显示屏上显示出完整的图像。
2 屏幕保护的格式及应用 屏幕保护的格式有.scr与.exe两种 .exe格式的屏保直接双击按照提示完成安装 .scr格式的屏幕保护程序在应用起来就相对复杂了一点windows2000与XP的用户需要将.scr文件复制到X:WINDOWSSystem32目录下windows98/windowsme用户需要将.scr文件复制到X:WINDOWSsystem目录“X”代表系统所在盘的盘符 屏幕保护替换完成后如何应用呢在桌面上右键quot桌面-属性-屏幕保护程序“通过屏幕保护程序的下拉菜单选择应用即可 3 屏保的发展与前景 1单纯保护屏幕的黑色阶段。
在这一阶段纯粹是为了保护屏幕。
陕西理工学院毕业设计论文 第 3 页 共 20 页 2具有一定趣味性的活动图形阶段。
这一阶段确定了屏保的应用程序特性因为活动的图形需要活动程序来实现屏保从这个时候开始使其成为一种软件成为可能。
3具备广告、装饰效果的阶段。
这一时期仅仅是第二阶段的进步。
4具备应用程序用途阶段。
个人认为这一阶段是目前乃至将来的发展方向。
屏保从简单的保护屏幕、趣味装饰性发展成利用空闲时间工作的应用程序。
KV2005的屏保杀毒是一种典型的应用。
正文 1
VB简介
VB是VisualBasic的简称是由美国微软公司于1991年开发的一种可视化的、面向对象和采用事件驱动方式的环境下的各类应用程序。
它简单易学、效率高且功能强大可以与Windows 专业开发工结构化高级程序设计语言可用于开发Windows具SDK相媲美。
在Visual Basic环境下利用事件驱动的编程机制、新颖易用的可视化设计工具使用Windows内部的广泛应用程序接口API函数动态链接库DLL、对象的链接与嵌入OLE、开放式数据连接ODBC等技术可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。
1991年美国微软公司推出了Visual Basic1.0可简称
VB1992年Microsoft公司又推出了
VB1.0的升级版
VB2.0????目前的最新版本是
VB2010测试版。
Visual 意为可视的、可见的指的是开发像Windows操作系统的图形用户界面Graphic UserInterfaceGUI的方法它与其他编程
软件不同的是不需要编写大量
代码去描述界面元素的外观和位置只要把预先建立好的对象拖放到屏幕上相应的位置即可。
应该说这是一次质的飞跃是一次编程技术的革命。
Basic 实际上是一个短语的缩写这个短语就是 Beginners all purpose symbolic instruction code 其中文意思为“初始者通用符号指令
代码语言”。
VisualBasic6有学习版、专业版和企业版三种版本以满足不同的开发需要。
学习版适用于普通学习者及大多数使用VisualBasic开发一般Windows应用程序的人员专业版适用于
计算机专业开发人员包括了
学习版的全部内容功能以及Internet控件开发工具之类的高级特性企业版除包含专业版全部的内容外还有自动化构件管理器等工具使得专业编程人员能够开发功能强大的组骨子里分布式应用程序。
随着版本的提高Visual Basic的功能也越来越强。
自从5.0版Visual Basic 推出了中文版与前个版本相比其功能有了很大提升。
但是功能再强大Visual Basic仍然有一个缺点在没有MSVBVM.DLL的计算机上必须安装所需的DLL文件同样VisualC在没有MSVCRT.DLL情况下亦无法运行。
在21世纪初Microsoft 公司推出 Visual Studio.NET2003它与 Visual Basic 之间有了重大变化Visual Studio 为各种编程工具做了一个平台Visual Basic.NET 可在这种平台上运行。
相对于传统
VB有很大的不同。
VB .Net首次使用.Net构架进行可视化编程并且能很好地与COM构架兼容Visual Studio .NET 2003 应用 .
NET Framework 1.1 。
2005年 Visual Studio 2005 则运用了 NET 2.0 的技术更加的方便了程序员的工作。
可是新的程序对
系统配置要求也较高需要微软.Net Framework 2.0以上的.Net构架支持。
2007年12月微软Microsoft推出了Visual Studio 2008 Beta 2 发生了重大的变化见附图在
代码输入的时候可以比
VB2005快很多在非特殊的情况下
VB2008都会自动开启 自动完成关键字 这个命令 而且支持最新的 .NET Framework 3.5 SP1 Beta 1.1
Vb的特点 Visual Basic之所以受到广大编程爱好者及专业编程人员的青睐是因为它具有以下一些特点 陕西理工学院毕业设计论文 第 4 页 共 20 页 1面向对象
VB采用了面向对象的程序设计思想。
它的基本思路是把复杂的程序设计问题分解为一个个能够完成独立功能的相对简单的对象集合所谓“对象”就是一个可操作的实体如窗体、窗体中的命令按钮、标签、文本框等。
面向对象的编程就好像搭积木一样程序员可根据程序和界面设计要求直接在屏幕上“画quot出窗口、菜单、按钮等不同类型的对象并为每个对象设置属性。
2事件驱动 在Windows环境下程序是以事件驱动方式运行的每个对象都能响应多个不同的事件每个事件都能驱动一段
代码——事件过程该
代码决定了对象的功能。
通常称这种机制为事件驱动。
事件可由用户的操作触发也可以由系统或应用程序触发。
例如单击一个命令按钮就触发了按钮的Click单击事件该事件中的
代码就会被执行。
若用户未进行任何操作未触发事件则程序就处于等待状态。
整个应用程序就是由彼此独立的事件过程构成。
3软件的集成式开发
VB为编程提供了一个集成开发环境。
在这个环境中编程者可设计界面、编写
代码、调试程序直至把应用程序编译成可在Windows中运行的可执行文件并为它生成安装程序。
VB的集成开发环境为编程者提供了很大的方便。
4结构化的程序设计语言
VB具有丰富的数据类型是一种符合结构化程序设计思想的语言而且简单易学。
此外作为一种程序设计语言
VB还有许多独到之处。
5强大的数据库访问功能
VB利用数据控件可以访问多种数据库
VB 6O提供的ADO控件不但可以用最少的
代码实现数据库操作和控制也可以取代Data控件和RDO控件。
6支持对象的链接与嵌入技术
VB的核心是对对象的链接与嵌入OLE技术的支持它是访问所有对象的一种方法。
利用OLE技术能够开发集声音、图像、动画、字处理、Web等对象于一体的程序。
7网络功能
VB 6O提供了DltTMLDynamictTML设计工具。
利用这种技术可以动态创建和编辑Web页面使用户在
VB中开发多功能的网络应用软件。
8多个应用程序向导
VB提供了多种向导如应用程序向导、安装向导、数据对象向导和数据窗体向导通过它们可以快速地创建不同类型、不同功能的应用程序。
9支持动态交换、动态链接技术 通过动态数据交换DDE的编程技术
VB开发的应用程序能与其他Windows应用程序之间建立数据
通信。
通过动态链接库技术在
VB程序中可方便地调用用C语言或汇编语言编写的函数也可调用Windows的应用程序接口API函数。
10联机帮助功能 在
VB中利用帮助菜单和F1功能键用户可随时方便地得到所需要的帮助信息。
VB帮助窗口中显示了有关的示例
代码通过复制、粘贴操作可获取大量的示例
代码为用户的学习和使用提供方便。
陕西理工学院毕业设计论文 第 5 页 共 20 页 1.2
VB中几个常用术语 工程Project是指用于创建一个应用程序的文件的集合。
对象Object可控制的某个东西对象具有属性和方法。
VB中主要有两类对象窗体和控件。
窗体Form应用程序的用户界面即windows。
控件Control指的是各种按钮、标签、文本框等。
属性Property是指对象的特征描述如大小、标题或颜色。
事件Event发生在对象上的动作。
事件发生时可以编写
代码进行处理。
方法Method控制对象动作行为的方式。
它是对象本身内含的函数或过程它也是一个动作是一个简单的不必知道细节的无法改变的事件但不称作事件。
ActiveXActiveX是基于Component Object ModelCOM的可视化控件结构的商标名称。
它是一种封装技术提供封装COM组件并将其置入应用程序如Web浏览器的一种方法。
无法完成的处理任务。
2屏幕保护程序设计方案 1.屏幕保护
程序的特性与设计方法 作为屏幕保护程序应该具有如下特性 1屏幕保护程序运行时鼠标光标被自动隐藏在程序结束时光标显示。
2当单击、移动鼠标或按下键盘时屏幕保护结束回到正常操作状态。
为了实现这些特性在编写
VB应用程序时可以采用如下方法 1改变窗体属性通常
VB应用程序的窗体都采用有边框的窗体外观但作为屏幕保护程序应设置窗体为无边框且为最大化。
2隐藏及显示鼠标光标在Visual Basic应用程序中隐藏及显示鼠标光标需要运用Windows的API函数该函数名为ShowCursor。
当用参数值True调用时显示鼠标光标当用参数值False调用时鼠标光标自动隐藏。
3检测鼠标移动
VB中有一个检测鼠标移动的对象事件MouseMove事件。
MouseMove事件通常在应用程序启动时就会触发有时在鼠标并未移动的情况下MouseMove事件仍有可能被触发。
因此如果在程序中直接用MouseMove事件检测鼠标是否发生了移动并不能正确反映鼠标的移动状况。
应该在MouseMove事件中编写
代码加以控制。
2.屏幕保护程序的设计 下面设计了一个简单的屏保程序在黑色的背景下变换色彩的小球一自定的速度移动。
并且可以设置小球的大小和运动速度。
下图为设计总框图: 图2.2.1 设计总框图 1“设置”窗体:利用三个滚动条分别设置小球的大小、X轴和Y轴的移动速度大小。
“设置”窗体 “屏保”窗体 模块 陕西理工学院毕业设计论文 第 6 页 共 20 页 2“屏保”窗体:用于设计屏保。
3“模块”联系两个窗体的关系。
2.1设计“设置”窗体 本窗体的主要功能是用于用户根据自己的喜好设置屏幕保护程序中小球的大小和运动速度并进行保存。
设计框图如下 图2.2.1.1 设置窗体的框图 创建一个窗体命名为“设置”用于设置小球的大小和移动的速度。
在窗体中添加一个图片控件两个单击按钮分别为“确定”和“退出”按钮三个滚动条分别设置小球的大小、X轴和Y轴的移动速度大小。
1确定按钮程序设计 考虑到当用户单击确定按钮时需要保存用户自己设置的小球大小和运动速度并且退出窗体。
程序设计流程图如下 图2.2.1.2 确定按钮程序流程图 2退出按钮程序设计 当用户单击退出按钮及退出窗体。
下图为程序设计流程图 窗体 确定按钮 退出按钮 滚动条控制Y轴速度 滚动条控制X轴速度 滚动条控制小球大小 图片控件 单击确定按钮 保存Size 保存Vx 保存Yy 退出 陕西理工学院毕业设计论文 第 7 页 共 20 页 图2.2.1.3 退出按钮程序流程图 3滚动条控制小球大小程序设计 用户操作滚动条时小球的大小随着用户的操作而改变。
实现方法为当用户改变滚动条的值时将滚动条改变后的值赋予Size再重新初始化小球调用预览程序。
程序设计流程如下 图2.2.1.4 滚动条控制小球大小流程图 4滚动条控制X轴速度程序设计 用户操作滚动条时小球在X轴的运动速度大小随着用户的操作而改变。
实现方法为当用户改变滚动条的值时将滚动条改变后的值赋予Vx再重新初始化小球调用预览程序。
程序设计流程如下 图2.2.1.5 滚动条控制小球X轴运动速度大小流程图 5滚动条控制Y轴速度程序设计 单击退出按钮 退出 移动滚动条 Size HScroll1.Value 重新初始化小球 重新预览 移动滚动条 Vx HScroll2.Value 重新初始化小球 重新预览 陕西理工学院毕业设计论文 第 8 页 共 20 页 X轴移动lt5 Y轴移动lt5 当鼠标键按下 当键盘按下 当鼠标移动 结束 屏保是否运行 是 否 否 否 是 是 显示鼠标 退出屏保 初始化窗体 初始化小球体 开始移动小球 用户操作滚动条时小球在Y轴的运动速度大小随着用户的操作而改变。
实现方法为当用户改变滚动条的值时将滚动条改变后的值赋予Vy再重新初始化小球调用预览程序。
程序设计流程如下 图2.2.1.6 滚动条控制小球Y轴运动速度大小流程图 2.2设计屏保窗体 该窗体为屏保窗体窗体背景为黑色因此将窗体的BackColor属性设置为ampH80000007amp。
根据屏保程序的特点窗体应为全屏设计因此不显示标题栏BorderStyle属性设置为0–NoneWindowState属性设置为2-Maximized。
在窗体中添加一个时间控件用于启动窗体。
在屏保程序运行的时候当单击、双击、右击、移动鼠标或按下键盘时屏幕保护结束回到正常操作状态。
应此程序设计如下 移动滚动条 Vy HScroll3.Value 重新初始化小球 重新预览 陕西理工学院
毕业设计论文 第 9 页 共 20 页 图2.2.2.1 屏保窗体程序设计流程图 2.3设计模块程序 1添加一个模块先检测程序正在运行窗体根据当前运行的模式选择屏保运行方式如果没有得到参数则运行模式为设置屏保参数如果得到的参数证明正在运行屏保则运行模式为屏保如果正在运行设置窗体则运行模式为预览模式其他参数运行模式为屏保模式。
预览模式是将屏保窗体设置为设置窗体的子窗体在图片控件中运行。
程序流程设计如下 图2.2.3.1 模块程序设计流程图 2屏保窗体运行后小球运动的程序设计。
得到用户设置的小球大小等参数对小球重新初始化然后以VxVy移动小球当小球碰壁后反弹并给变小球颜色且发出碰撞声音。
下图为程序设计流程图其中XY分别为小球球心在X轴和Y轴的坐标值R为小球半径wid和hgt分别为屏幕的宽度和高度。
得到参数args Args“/C” Args“/S” Args“/P” 其他 frmCover为子窗体 Frmconfig.Show frmCover.Caption quotPreviewquot frmCover.Show args frmCover.Show frmCover.Show 陕西理工学院
毕业设计论文 第 10 页 共 20 页 图2.2.3.2 小球移动设计流程图 本程序在
vb6.0/windowXP 下编译通过要将该程序作为一个屏幕保护程序来运行一般屏幕保护程序的扩展名是scr在编译前点选“工程/ 属性”然后点选“生成”标签在应用程序的标题中输入“小球”表示这是一个叫做小球的屏幕保护程序。
接着点选“文件/生成工程小球.EXE”将出现一个保存文件的画面将文件名修改为“小球.scr”文件然后确认。
找到文件“小球.scr”文件在其上按鼠标右键选取快捷菜单的“安装”完成设定后按下“确定”钮完成屏幕保护程序的安装。
本屏幕保护程序和其它屏幕保护程序一样在设定的等待时间里没有任何的输入动作时屏幕保护程序会自动启动移动鼠标就会恢复原来的画面。
3 屏保程序以后的发展 个人认为以后屏保将不仅仅是屏保这个概念了而代表着利用系统空闲时间而进行的一系列任务。
如果要给它取个名字不妨叫做“空闲任务管理”。
当你的电脑处于长时间不操作的时候、或者人为决定进入空闲状态电脑则开始执行一系列空闲状态的特定任务。
我个人觉得以下几个功能是
常用的 1进入低功耗状态。
休眠显示器、休眠显示卡、降低CPU的速度甚至当温度降低到一定程得到参数 随机取的颜色参数 重画小球 移动小球 XltR lt Xgtwid-R YltR Ygthgt-R Vx-Vx 颜色变化 发出声音 颜色变化 发出声音 Vx-Vx 是 是 是 是 否 否 否 否 陕西理工学院毕业设计论文 第 11 页 共 20 页 度之后停止风扇 2执行自维护任务。
杀毒、整理碎片、备份数据、升级驱动程序、同步Internet时间。
3值班功能。
主动维持当前状态即使断电之后重新启动也恢复当前内存任务需要在线UPS支持。
4资源共享。
进入空闲状态的时候在你的允许下将一部分运算资源、内存资源以安全方式提供给远程用户。
远程用户大量利用
网络上的这种资源进行并行计算。
不仅可以使经费拮据的科研机构得到强大运算能力而且设备落后的穷人也有机会完成他的系统无法完成的处理任务。
4 结束语 毕业设计是每个大学生必须面临的一项综合素质的考验如果说在过去四年里我们的学习是一个知识的积累过程那么现在的毕业设计就是对过去所学知识的综合运用是对理论进行深化和重新认识的时间活动。
在这近两个月的毕业设计中我们有艰辛的付出当然更多的是丰收的喜悦。
知识固然得到了巩固和提高但我相信在实践中的切身体会将会使我在以后的
工作和学习中终身受用。
首先学习能力得到了提高。
在毕业设计中自始至终独立完成程序的设计、调试等。
在这些过程中遇到许多困难但通过书籍或网络查阅了很多相关文章和向导师请教后终于解决了。
通过这次毕业设计我不仅对理论有了更深一步的认识增强了和外界技术的沟通还培养了自学能力和分析解决
问题的能力更重要的是培养了克服困难的勇气和信心。
其次培养了自己的市场观念。
一个商品是否能够抢占市场除了必须的功能和质量要求外其价格是最大的竞争优势。
如何在保证质量和完成同等功能的情况下把产品的成本降到最低。
是每个设计人员在作出
方案时首要考虑的因素。
再次则是人际交流能力得到锻炼。
人非生而知之者人的学识总是不能面面俱到的这就要求我们必须善于借鉴别人的成功经验或失败教训使自己少走弯路。
例如在毕设期间通过与同学们的交流与探讨是我对许多事情都有了新的认识。
总之毕业设计完成了但又面临着工作。
我相信我会把自己的热情和所学奉献到自己的工作中不断努力不断进取 在此对毕业设计中给予我无私帮助和指导的刘东老师以及帮助过我的同学表示衷心的感谢。
在此期间老师不断的向我们传.