制作屏保程序
文 王卫 东
屏幕保护程序是一种后缀为 的应用程序 , 一般
存放在 的系统 目录下 为
, 为 , 相信大家都对它
的作用有一定的了解 。 在当前发达繁盛的互联网时代 ,
我们可 以轻而易举的获取制作精 良的屏幕保护程序 , 但
制作一个属于 自己 的屏保可能会更使人感兴趣 。 其实 ,
制作屏保并不是一件很 困难的事情 , 下面我就来 向大家
介绍一种用 制作屏幕保护程序的方法 。
屏幕保护程序运行时通常是在全屏背景上显示动
画 、 图片和 文字 , 当键盘按键被按下或 鼠标被移动时结
束程序 。 我们 自己编制程序时 , 最关键的是处理程序对
键盘和 鼠标的响应 , 至 于在屏幕上显示什么 , 那就仁者
见仁智者见智了 。 本文所提供的示例则是在黑色背景屏
幕中央显示字符串 ” ” , 并使 该字符串随
机变换颜色 。 图
键键键
「「
示例的具体实现过程如下
建 立 一 个 应 用 工 程
比
在 向导 的第 一 步 中选 择
, 再点击按键 一 完成工程的建立 。
在 菜单 中选择 菜单项 , 选 中插人
中的 光标 图 , 然后重新绘制该
二 一
, 箫一 , 〔几 胃‘〔
·
, ,“·“‘ , ‘,
圈
组
甄
漏 『口
光标一将该光标图案设置为空 图 , 最后设置该光标
的 值为 备用 。
通过 新建一个 以 为基类的窗
口 类 , 并在该类 中定义一个私有的
型变量 存储注册后 的窗 口 类名 。 在
的构造 函数中添加如下语句
二
在 类 中添加 函数 ,
代码如下
双
注册窗 口 类
研、
,
一 ,
光标为 自定义光标
, ,
窗体背景颜色为黑色
一
刀获取屏幕位置 、大小信息
四 一 ’, ,
, , ” , 少 , , 卜
,
创建能够覆盖整个屏幕的窗体
遭些竺黔露次蕊
© 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
恻
创建失败则束应用程序
,
, ,
设置一个时钟 , 响应周期为
民
通 过 为 类 添 加
几 消息 , 并在消息映射函数中添加如下代码
‘
重绘窗 口
巾
通 过 为 类 添 加
消息 , 并在消息映射函数中添加如下代码
。
℃
获取窗体位置
、大小信息
创建字体对象
今 令 今 令创建逻辑字体令 令 令 令
。 , 字体高度
, 刀字体宽度
, 刀字体显示角度二
, 了
, 字体磅数
, 非斜体
, 无下划线
, 无删除线
, 使用缺省字符集
几 , 缺省输出精度
刊
, 缺省裁减精度
泣 , 缺省值
’ , 缺省值
, , ,
, , 字体名二
·
选人设备描述
通过 函数随机设置要显示 在屏幕上 的文本
的颜色
,
,
设置文本背景颜色
式 , ,
创建文本字符串
式, , ”
在屏幕上显示文本
介 一 ,
·
,
一 ,
,
, , ” ,
每当 函数执行 了 就会引发
一 消息
, 从而执行上述代码 , 实现在屏幕上显
示随机变化颜色的文本的功能 。
通 过 为 类 添 加
消息 , 并在消息映射函数中添加代码
以使程序在结束前消灭在 中
创建的时钟 。
为了避免发生同时运行多个该程序的副本必须通
过 添 加 丛
、
消息 , 两个消息的映射函数代码如下
,
,
, ,
,
,
《
铭
通 过 私 为 此 类 分 别 添 加
竹
、 、
、 、
、
等消息以便在 鼠标移动或
叹礁窝慧竺竺当
© 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
按下按键及按下键盘按键时能够结束屏幕保护程序 , 其
实现代码如下
。,
按下 鼠标左键时结束应用程序
部
,
,
按下 鼠标右键时结束应用程序
罗
,
、 ,
按下 鼠标中键时结束应用程序
。呷
,
,
刀 鼠标移动时结束应用程序
一 , 一
一 , 一
,
。 ,
,
按下键盘输人键时结束应用程序
罗 一
, ,
,
,
按下键盘系统键时结束应用程序
罗
, , 邵
在 类 中添 加 私 有 的
型成员变量 , 并将 , 的
函数代码用以下代码替代
滋
,
创建全屏窗体实例
劝 】
爪 、
一
通 过 在 类中添加 函
数 , 代码如下
【
〕
退出程序前消灭窗体实例
〕
选择 匀 菜单中的 ⋯ 项 , 在弹出的
对 话框 的 表 项 中 , 将
中的 改为 。
编译连接 、运行 。
至此 , 我们已经制作完成了一个屏幕保护程序 。
以上实例在 下 , 以 编译通过 。
画
乙电脑知识与技术之 沃 芝卜一、
一 一
一
’ 尹 产
© 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net