用Delphi怎么实现这个屏保一样的效果?(100分)

  • 主题发起人 主题发起人 Activer
  • 开始时间 开始时间
A

Activer

Unregistered / Unconfirmed
GUEST, unregistred user!
这个屏保地址: http://down1.tyfo.com/down/screen/film/web/file/0601-3.zip
就是像黑客帝国里有一台电脑的屏幕上的字符都是绿色的,屏幕底色是黑色
然后字符不断的下坠。 请高手指点。
 
如果是我的话,就用POWERDVD播放黑客帝国的DVD,截取一张图片,
然后用 BITBLT API 函数 和一个 TIMAGE 控件进行雨滴效果显示,
应该这样就行了。
 
zhihuali的做法不错,加入密码就更好了:)
 
上面擺滿字符,逐個顯示或掩蓋,也是這樣的效果,不過字體要自己定義
 
to ming0828:
实在是太感谢了! 我已给你发了EMail。(Activer@yeah.net)
 
To ming0828,
兄弟,能也给我发一份吗?
E-mail:dream40@etang.com
 
也给我一份参考参考。
sword_liu@sohu.com
 
大家再说说呀
 
我也要一分
ppdjl@sina.com
 
flash做一个,DELPHI的屏保里调用
 
给大家贴一段退出屏保时的密码验证过程:
procedure GetPassword;
var
MyMod: THandle;
PwdFunc: function(Parent: THandle): Boolean; stdcall;
SysDir: string;
NewLen: Integer;
MyReg: TRegistry;
OkToClose: Boolean;
begin
if (SSMode <> ssRun) then
begin
Close;
Exit;
end;

IgnoreCount := 5;
OkToClose := False;
MyReg := TRegistry.Create;
try
MyReg.RootKey := HKEY_CURRENT_USER;
if MyReg.OpenKey('Control Panel/Desktop', False) then
begin
try
try
ShowCursor(True);
if MyReg.ReadInteger('ScreenSaveUsePassword') <> 0 then
begin
SetLength(SysDir, MAX_PATH);
NewLen := GetSystemDirectory(PChar(SysDir), MAX_PATH);
SetLength(SysDir, NewLen);
if (Length(SysDir) > 0) and (SysDir[Length(SysDir)] <> '/') then
SysDir := SysDir + '/';
MyMod := LoadLibrary(PChar(SysDir + 'PASSWORD.CPL'));
if MyMod = 0 then
OkToClose := True
else
begin
PwdFunc := GetProcAddress(MyMod, 'VerifyScreenSavePwd');
if PwdFunc(Handle) then
OkToClose := True;
FreeLibrary(MyMod);
end;
end
else
OkToClose := True;
finally
ShowCursor(False);
end;
except
OkToClose := True;
end;
end
else
OkToClose := True;
finally
MyReg.Free;
end;

if OkToClose then
Close;
end;
 
我一份,谢谢!
 
to ming0828:
谢谢您的Source 但是我发现您的程序和Matrix这个屏保有较大的差异,
我也正在分析,已经有些进展,哪天有空我写一个Matrix的增强版。
欢迎大家继续讨论。
 
你还不结束
 
我也要! qingyaoyao@21cn.com 嘻嘻
 
我也要.netcat2@21cn.com
 
前段时间我写了一个类似的东西,你要是想要的话我可以把源码给你,我的email是ming0828@263.net
 
我也要
pwcn@cmmail.com
谢谢
 
多人接受答案了。
 
后退
顶部