打印本文 打印本文  关闭窗口 关闭窗口  
VB辅导:桌面背景任你改
作者:佚名  文章来源:不详  点击数  更新时间:2008/4/18 14:45:11  文章录入:杜斌  责任编辑:杜斌

  众所周知在Windows中可以通过属性面板任意修改背景图案,要在VB的程序设计中实现这一功能其实也很方便,具体实现方法如下:

  首先在VB中创建一个窗体并在其中加入一个命令按钮,第一步在窗体的通用段中输入以下代码:

  Const SPI_SETDESKWALLPAPER = 20

  Const SPIF_UPDATEINIFILE = &&H1

  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 之前加上 Public 保留字, 并且将 Private 保留字去掉。

  然后在命令按钮中的Click事件中输入以下代码:

  '将桌面图片设定成 c:\windows\CIRCLES.bmp

  Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0,"c:\windows\CIRCLES.bmp", SPIF_UPDATEINIFILE)

  '将桌面图片清除

  Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0,"",SPIF_UPDATEINIFILE)

  但以上程序设定图片之后, 必须等到下次 Windows 重新启动时才生效, 如果要设定之后立刻生效,则程序须修改如下:

  Const SPIF_SENDWININICHANGE = &&H2

  Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\windows\CIRCLES.bmp", SPIF_UPDATEINIFILE + SPIF_SENDWININICHANGE )

  此外如果只有本次使用 Windows 时改变桌面图片(下次开机时还原原状), 则程序如下:

  Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\windows\CIRCLES.bmp", SPIF_SENDWININICHANGE ) ' 去掉 SPIF_UPDATEINIFILE
打印本文 打印本文  关闭窗口 关闭窗口