文章收藏-FAQ 位置:电脑学习网

用 VB 程序如何改变桌面的墙纸图片?

此一问题需调用 SystemParametersInfo API 函数,细节如下:
   1. API 的声明:
    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 保留字去掉。
   2. 程序范例:
    Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, BMP图档名称, SPIF_UPDATEINIFILE)
    例如:
    ’1. 将桌面图片设定成 c:\windows\setup.bmp:
        Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, “c:\windows\setup.bmp”, SPIF_UPDATEINIFILE)
    ’2. 将桌面图片清掉:
        Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, “”, SPIF_UPDATEINIFILE)
    程序如下:
      Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, BMP图档名称, SPIF_UPDATEINIFILE)
    但以上程序设定图片之后,必须等到下次 Windows 重新启动时才生效,如果希望设定之后立刻生效,则程序须修改如下:
     Const SPIF_UPDATEINIFILE = &H1
     Const SPIF_SENDWININICHANGE = &H2
     Const SPI_SETDESKWALLPAPER = 20
     Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, “c:\windows\setup.bmp”, SPIF_UPDATEINIFILE +      SPIF_SENDWININICHANGE)
    此外希望只有本次使用 Windows 时改变桌面图片(下次开机时还原原状),则程序如下:
     Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, “c:\windows\setup.bmp”, SPIF_SENDWININICHANGE) ’去掉 SPIF_UPDATEINIFILE

     [文章来源:“十万个为什么”电脑学习网]
     [网络地址:http://why100000.com]
     [版权声明:除本站部分特别声明禁止转载的专稿外,其他的文章可以自由转载,但请务必注明出处和原始作者。本站文章版权归文章原作者所有。如果本站转载的文章有版权问题请联系本站,我们会尽快予以更正。]
 

【字体:[大] [中] [小] 【加入收藏】 【发表评论】 【关闭本窗口】

Copyright © “十万个为什么”电脑学习网 2000-2007 陕ICP备06007929号
站务联系:MSN & Email:zhangking2008@gmail.com  QQ:9365822