定时更改桌面背景

寒假里就开始写这个了,但是断断续续的,现在终于写完了。看到win7中有定时更改桌面背景这一功能,但是xp没有,所以想自己写代码实现,玩玩。 感觉还有点意思。有兴趣的鹏友可以自己写写。由于时间关系,没有仔细测试。有问题,欢迎大家指出。

用c语言调用API编写

开发工具为:vc6.0

源代码:

/Files/stublue/ChangeWallPaper1.0.rar

大体思路:

 

改变桌面背景的API参考资料:
'Set   wallpaper   API    
  Private   Declare   Function   SystemParametersInfo   Lib   "user32"   Alias   "SystemParametersInfoA"   (   ByVal   uAction   As   Long   ,   ByVal   uParam   As   Long   ,   ByVal   lpvParam   As   Any,   ByVal   fuWinIni   As   Long   )   As   Long    
  Const   SPI_SETDESKWALLPAPER   =   20    
  Const   SPIF_SENDWININICHANGE   =   &H2    
  Const   SPIF_UPDATEINIFILE   =   &H1    
   
  Dim   iReturn   As   Long    
   
  'stretch   image   to   fill   screen    
  iReturn   =   SystemParametersInfo(SPI_SETDESKWALLPAPER,   0,   "c:\paper.bmp"   ,   SPIF_UPDATEINIFILE   Or   SPIF_SENDWININICHANGE)    
   
  'center   image   in   the   screen   (do   not   stretch)    
  iReturn   =   SystemParametersInfo(SPI_SETDESKWALLPAPER,   0,   "c:\paper.bmp"   ,   0)
  from:http://www.nokiamobile.org.cn/13_100103_606127.html关键的就是改变图片路径参数,来改变桌面背景。
用一个二维数组存储所有背景图片路径。然后在在更换桌面背景时,从这个数组中取图片路径。

定时:
就是定时器的使用,如鹏网(http://rupeng.com/forum/jian-2518.html)杨老师的视频教程中已经有讲。

最小化到托盘:
可以参照我的这个帖子
http://www.rupeng.com/forum/thread-9231-1-1-uid2518.html

大概思路就这些吧。

 

 

posted on 2010-03-04 19:27  Leon_He  阅读(757)  评论(0编辑  收藏  举报

导航