社区
C++ Builder
帖子详情
谁有屏幕保护程序的源码?
longfine
2002-03-25 08:44:52
功能完整的,包括设置和预览(不知是否需要专门处理?).
...全文
59
8
打赏
收藏
谁有屏幕保护程序的源码?
功能完整的,包括设置和预览(不知是否需要专门处理?).
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
niya3
2002-03-25
打赏
举报
回复
屏保就是可执行程序!
xhfjy
2002-03-25
打赏
举报
回复
BJ
niya3
2002-03-25
打赏
举报
回复
为了使保护程序能够按照用户以前设置的参数运行,采用了注册表技术来保存用户的设置信息!
OK!看懂了吧!挺简单的!
niya3
2002-03-25
打赏
举报
回复
其中有两个表单!一个设置参数,一个执行屏保!
niya3
2002-03-25
打赏
举报
回复
现以制作一个屏幕保护程序为例介绍如下:
Name Caption
Label1 运行速度
Button1 确定
Button2 取消
Edit1
在Form2中添加如下控件
Name Property Value
Timer1 Interval 10
#include "registr.hpp"
private:
TRegistry MyReg;
TRegistry MyReg;
void __fastcall TForm1::Form1Show(TObject *Sender)
{
MyReg=new TRegistry;
MyReg->RootKey=HKEY_LOCAL_MACHINE;
MyReg->OpenKey("Software\\MyCompany\\Remember",true);
Edit1->Text=MyReg->ReadInteger("Interval");
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
MyReg->WriteInteger("Intervl",Edit1->Text.ToInt( ));
MyReg->Free( );
Close( );
}
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Close( );
}
Public:
BEGIN_MESSAGE_MAP
MESSAGE_HANDLER(WM_ERASEBKGND,TWMEraseBkgnd,WMEraseBkgnd)
MESSAGE_HANDLER(WM_ACTIVATE,TWMActivate,WMActivate)
MESSAGE_HANDLER(WM_SYSCOMMAND,TWMSysCommand,WMSysCommand)
END_MESSAGE_MAP(TForm)
int x1,x2,x3 ,x4,x5,x6;
private:
void __fastcall CreateParams(TCreateParams ¶ms);
void __fastcall WMEraseBkgnd(TWMEraseBkgnd &Msg);
void __fastcall WMActivate(TWMActivate &Msg);
void __fastcall WMSysCommand(TWMSysCommand &Msg);Graphics::TBitmap *ScreenBitmap;
void __fastcall TForm2::Form2Create(TObject *Sender)
{
Left = 0;
Top = 0;
Width = Screen->Width;
Height= Screen->Height;
Cursor = crNone;
ScreenBitmap->Width = Width;
ScreenBitmap->Height = Height;
SreenBitmap->Canvas->Brush->Color = clBlack;
ScreenBitmap->Canvas->FillRect(Rect(0,0,Width,Height));
Timer1->Enabled = true;
Form1->MyReg->OpenKey("Software\\MyCompany\\Remember",true);
Timer1->Interval=Form1->MyReg->ReadInteger("Interval");
x4=10;
x5=20;
x6=30;
}
void __fastcall TForm2::Form2Close(TObject *Sender)
{
Timer1->Enabled = false;
delete ScreenBitmap;
}
void __fastcall TForm2::Form2KeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
Close( );
MyReg->Fee( );
}
void __fastcall TForm2::Form2MouseDown(TObject *Sender, TMouseButton
Button,
TShiftState Shift, int X, int Y)
{
Close( );
MyReg->Free( );
}
void __fastcall TForm2::Form2MouseMove(TObject *Sender, TShiftState Shift,
int X,
int Y)
{
Close( );
MyReg->Free ( );
}
void __fastcall TForm2::WMEraseBkgnd(TWMEraseBkgnd &Msg)
{
Msg.Result = false; file:
}
void __fastcall TForm2::WMActivate(TWMActivate &Msg)
{
if(Msg.Active == false)
Close();
}
void __fastcall TForm1::WMSysCommand(TWMSysCommand &Msg)
{
if(Msg.CmdType == SC_SCREENSAVE)
Msg.Result = true;
else
TForm::Dispatch(&Msg);
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
x1=Random(Screen.Height);
x2=Random(Screen.Weight);
x3=Random(Screen.Height);
Canvas->pen->Color=RGB(0,0,0);
Canvas->Pen->Width=10;
Canvas->Brush->Color=RGB(0,0,0);
Canvas->Ellipse(x4,x5,abs(x4-x6),abs(x5-x6));
Canvas->Pen->Color=RGB(Ranndom(255),Random(255),Random(255));
Canvas->Pen->Width=10;
Canvas->Brush->Color=RGB(Ranndom(255),Random(255),Random(255));
Canvas->Ellipse(x1,x2,abs(x1-x3),abs(x2-x3));
x4=x1;
x5=x2;
x6=x3;
}
void __fastcall TForm1::FormPaint(TObject *Sender)
{
Canvas->Draw(0,0,ScreenBitmap);
}
kingcaiyao
2002-03-25
打赏
举报
回复
以前的贴子有。
dycdyc123
2002-03-25
打赏
举报
回复
你可以搜索一下!
有这样的帖子!
你是程序猪吗?
NowCan
2002-03-25
打赏
举报
回复
http://go5.163.com/nowcan/tech_bcb_mmi.htm
易语言
屏幕
保护
程序
源码
易语言官网
易语言
屏幕
保护
程序
源码
屏幕
保护
程序
(VC
源码
)
VC++编写的简易的
屏幕
保护
程序
!VC
源码
易语言
源码
易语言
屏幕
保护
程序
源码
.rar
易语言
源码
易语言
屏幕
保护
程序
源码
.rar
易语言
源码
屏幕
保护
程序
.rar
易语言
源码
屏幕
保护
程序
.rar
delphi编写的
屏幕
保护
程序
(含
源码
)
用delphi编写的
屏幕
保护
程序
,你试过吗?此
程序
包含23种之多的图形变换,包括马赛克,百叶窗,渐隐,拉幕等等特效。并使用了线程处理,改变了一般
程序
关闭
程序
要等待的问题。
C++ Builder
13,825
社区成员
102,679
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章