<b>用C++Builder开辟Windows屏保</b>[VC/C++编程]
本文“<b>用C++Builder开辟Windows屏保</b>[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
择要:本文通过一个具体的程序演示了Windows下的屏幕保护程序的实现历程.
一. 引言
视窗系统下的屏幕保护程序是一个基于号令行(Command Line)的利用程序.当屏保程序被调用时操作系统就用具体的号令行履行该程序.本文组织和处理了全部的号令行,包含“/p”,“/s”,“/c”,“/a”,此中“/p”表示让屏保在预览窗口中显示;“/s”表示真正运行屏保;“/c”表示调用设置对话框;而“/a”表示调用密码设置对话框(WinNT中无效).本程序尽大概简单地实现一个全功效的屏保,运行Windows的屏保设置程序时你既可以改正密码(WinNT中无效)又可以设置图片显示的频率并把频率数值保存到注册表里.当屏保运行时图片以你设置的频率改变显示位置.笔者还留了个功课给读者,请看图1中的挑选图片文件夹这个项目,按下浏览按钮可以设置图片的途径,笔者已经实现了浏览按钮的功效并
把得到的途径也保存到注册表中,并让屏保启动时读picdir的值,picdir等于"no"时的代码笔者已实现了,picdir不等于"no"时的代码由读者实现.也就是让读者实现一个能把picdir目录里的图片轮番显示的屏保程序.
二. 实现办法
首先介绍几个API函数.
WinMain函数:
int WINAPI WinMain(
HINSTANCE hInstance, // 当前实例句柄
HINSTANCE hPrevInstance, // 前一个实例句柄
LPSTR lpCmdLine, // 指向号令行参数的指针(本程序要操纵的参数)
int nCmdShow // 窗口的状况
);
GetWindowLong函数:得到指定窗口信息的函数
LONG GetWindowLong(
HWND hWnd, //窗/口句柄
int nIndex //指/定返回的信息
);
SetWindowLong函数:改变窗口属性
LONG SetWindowLong(
HWND hWnd, //窗/口句柄
int nIndex, // 指定要设定的值的信息
LONG dwNewLong // 新值
);
SetParent函数:改变指定窗口的父窗口
HWND SetParent(
HWND hWndChild, //要/改变父窗体的窗口句柄
HWND hWndNewParent //新/的父窗体的句柄
);
GetClientRect函数:得到窗口的客户区
BOOL GetClientRect(
HWND hWnd, // 窗口句柄
LPRECT lpRect //RECT/构造的地址
);
SetWindowPos函数:改变窗口的大小,位置,顶级窗口等
BOOL SetWindowPos(
HWND hWnd, // 窗口句柄
HWND hWndInsertAfter, // 安置窗口次序的句柄(Z order)
int X, // horizontal position
int Y, // vertical position
int cx, // width
int cy, // height
UINT uFlags // 窗口位置等标志
);
SystemParametersInfo函数:拜候或设置系统级的参数
BOOL SystemParametersInfo(
UINT uiAction, // 指定要获得或设置的系统参数
UINT uiParam, // depends on action to be taken
PVOID pvParam, // depends on action to be taken
UINT fWinIni // 用户配置文件能否改变标志
);
ShowCursor函数:显示或躲藏光标
int ShowCursor(
BOOL bShow // 鼠标可见度标志
);
GetVersion函数:获得系统的版本信息
DWORD GetVersion(VOID)
以上是“<b>用C++Builder开辟Windows屏保</b>[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |