用Delphi实现壁纸更换

起个名真烦躁

起个名真烦躁

2016-02-19 21:29

想要天天向上,就要懂得享受学习。图老师为大家推荐用Delphi实现壁纸更换,精彩的内容需要你们用心的阅读。还在等什么快点来看看吧!

  在Windows95/98中,都是使用注册表对系统数据进行管理,有关壁纸的设置数据保存在Hkey_Current_UserControl PanelDesktop的Wallpaper和TileWallpaper 等键值中,只要成功修改了这两个键值,然后发消息给Windows即可更换壁纸。在本例的程序中,使用了一个Tform;两个Tspeedbutton(Speedbutton1用于接受用户的浏览命令,Speedbutton2用于接受用户的更换壁纸命令);一个Timage(用于显示图片)。另外,还用到一组文件控件:Tfilelistbox,Tdrivecombobox,Tdirectorylistbox,用于选择图片文件,可以设置FileListBox的mask属性,筛选显示在FileListBox 中的文件类型(如只显示.bmp文件)。下面的两个程序段是实现浏览图片和更换壁纸的关键代码。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  Procedure Tform1.SpeedButton1Click(Sender:Tobject);
Begin
If (filelistbox1.FileName=
′′) Then {判断Filelistbox1中文件有没有被选中}
   Messagedlg(′请先选择一幅位图′,mtInformation,[mbOK],0)
Else
Image1.Picture.LoadFormFile(Filelistbox1.FileName);{加载图片文件并显示}
End;
ProcedureTform1.SpeedButton2Click(Sender:TObject);
Var
Reg:Tregistry;{Tregistry 对象在Registry 单元中声明,需用Uses令引用Registry单元}
}
Begin
If (Filelistbox1.FileName=′′) Then
Messagedlg(′请先选择一幅位图′,mtinformation,[mbOK],0)
Else
Begin
Reg:=Tregistry.Create;{创建Tregistry对象的实例}
Reg.Rootkey:= Hkey_Current_User;{设置根键名称}
Reg.OpenKey′Control PanelDesktop′,False); {打开Control PanelDesktop 路径对应的主键}
Reg.WriteString (′TileWallPaper′,
′0′);
Reg.WriteString
′Wallpaper′,fileli?
stbox1.FileName);{向TileWallpaper 和Wallpaper串覆盖写入新值}
Systemparametersinfo(SPI_SETDESKWallpaper,0,Nil,SPIF_SendChange);{向Windows发送消息,通知Windows更换壁纸}
Reg.CloseKey;{将更改内容写入注册表并关闭}
Reg.Free;{释放对象}
End;
End;

  代码中用到的一些函数可以察看Delphi的联机帮助。需要注意的是:调用打开子键的函数OpenKey时,第二个参数一定要设为False。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)
展开更多 50%)
分享

猜你喜欢

用Delphi实现壁纸更换

编程语言 网络编程
用Delphi实现壁纸更换

用Delphi实现文件关联

Delphi
用Delphi实现文件关联

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

用Delphi实现打印功能

Delphi
用Delphi实现打印功能

用Delphi轻松实现背景播放

Delphi
用Delphi轻松实现背景播放

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

用DELPHI实现文件加密压缩

编程语言 网络编程
用DELPHI实现文件加密压缩

用Delphi实现远程屏幕抓取

Delphi
用Delphi实现远程屏幕抓取

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

CSS隔行换色

CSS隔行换色

建立自己的csdn知识管理库(1)

建立自己的csdn知识管理库(1)
下拉加载更多内容 ↓