收集关于如何编写屏幕保护的资料

如何编写屏幕保护程序(阿卓)


对于屏幕保护程序,大家不会陌生吧?一般屏幕保护程序都是一些设计精美、变幻无穷的动感艺术图形程序或者是一些赏心悦目、多姿多彩的图像程序,所以许多人都对屏幕保护程序有不错的印象,或多或少都钟情于某类屏幕保护程序,让它在计算机“发呆”了一段时间后,自动开始运行。据说屏幕保护程序主要有两种功能:1.保护显示屏幕的荧光粉不会因为长时间显示移幅静态图像而被烧坏;2.隐藏屏幕上的敏感的信息。我觉得屏幕保护程序还有一个功能,就是它漂亮精美的画面可以美化电脑,很有欣赏价值。

大家可能观察到屏幕保护程序的后缀名是.scr,那是什么文件格式啊?能产生这么美轮美奂的图形效果。呵呵,其实它就是.exe,只不过改了个后缀名罢了,系统能够自动识别,并当作.exe来执行。不过可不是任何.exe直接改了后缀名就可以当作屏保来用了,屏幕保护程序是一种特殊的WINDOWS程序,它必须按照一定的规则来编写才能做出真正的屏保程序。这里就来做个介绍。

VC提供了一个支持屏幕保护的开发库scrnsave.lib,这个库已经定制了一个屏幕保护程序的框架结构,开发者只需要在完成相应的函数和提供相应的资源就可以了,它们是:

要实现的函数(已经在scrnsave.h中有声明了):

BOOL WINAPI ScreenSaverProc(
HWND hWnd,
UINT message,
WPARAM wParam,
LPARAM lParam); // 屏幕保护程序的窗口函数,几乎所有的操作都在这里进行

BOOL WINAPI ScreenSaverConfigureDialog(
HWND hDlg,
UINT message,
WPARAM wParam,
LPARAM lParam); // 屏幕保护设置对话框的窗口函数

BOOL WINAPI RegisterDialogClasses(
HANDLE hInst); // 在这里注册特殊的屏幕保护设置对话框的窗口类

要准备的些资源(ID是预先定义在scrnsave.h中的,需要在resource.h中加入#include <scrnsave.h>和删除重复的ID):

DLG_SCRNSAVECONFIGURE // 对话框资源
ID_APP // 程序图标资源
IDS_DESCRIPTION // 程序描述字符串资源

一般情况下,屏幕保护程序都依赖于定时机制来产生匀速的动画效果,典型的方法就是收到WM_CREATE消息的时候用SetTimer()函数创建一个定时器,在受到WM_DESTROY消息的时候用KillTimer()函数销毁定时器,而在每次收到WM_TIMER消息的时候进行绘图操作。通常情况下,我们必须把没有处理过的消息传递给缺省的屏幕保护窗口函数处理(实际上处理过的消息传递给它也无妨)。

对于屏幕保护设置对话框窗口函数,则像一般的窗口函数一样的处理,只不过对话框资源ID必须使用scrnsave.h中预先定义好的ID号。

还有,在RegisterDialogClasses()函数中,你可以根据你设计的屏保设置对话框的需要,注册特殊的窗口类,比如说,你的对话框包含了comctl32的控件,你就需要在这里使用函数InitCommonControls()注册这些控件的窗口类。

另外,有一点小小的技巧:在VC的Project->Settings->Link选项卡中可以设置输出的文件名,你可以将输出的文件名的后缀改为.scr,使它直接输出屏幕保护程序文件,而不必每次都费力地去改名。

最后,如果还有什么不明白的地方,可以参考我制作的屏幕保护程序:深海生物 的源代码(可以在“作品一览”栏目中下载软件和源代码)。剩下的,就是你来发挥自己的想象力,编制出漂亮的屏幕保护程序了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
项目:– JavaScript 中的患者数据管理系统 患者数据管理系统是为医院开发的 node JS 项目。通过使用此系统,您可以轻松访问患者数据,它具有成本效益,可改善患者护理和数据安全性。不仅如此,它还减少了错误范围。在运行项目之前,您需要下载 node.js。 这个患者数据管理项目包含 javascript、node.js 和 CSS。我们必须让服务器监听端口 3000,并使用 JSON 在客户端和服务器之间交换数据。这个项目会不断询问您有关插件更新的信息,因此请保持互联网畅通。此系统允许您执行 crud 操作。在这里,您是系统的管理员。您还可以添加所需的员工人数。此外,您还可以更新患者记录。该系统功能齐全且功能齐全。 要运行此项目,您需要在计算机上安装NodeJS并使用现代浏览器,例如 Google Chrome、  Mozilla Firefox。ReactJS项目中的此项目可免费下载源代码。有关项目演示,请查看下面的图像滑块。 对于手动安装 1.将主项目文件夹解压到任意目录 2.从 cmd 设置项目目录的路径 3. 输入命令“npm install” 4.完成后输入命令“npm start” 5.现在,您将获得一个 localhost:portnumber,并转到该 URL 演示: 该项目为国外大神项目,可以作为毕业设计的项目,也可以作为大作业项目,不用担心代码重复,设计重复等,如果需要对项目进行修改,需要具备一定基础知识。 注意:如果装有360等杀毒软件,可能会出现误报的情况,源码本身并无病毒,使用源码时可以关闭360,或者添加信任。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值