用VB編程完成任意更改Windows桌面背景
發(fā)表時(shí)間:2023-08-20 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]文/YUANXIANG_W 眾所周知在Windows中可以通過(guò)屬性面板任意修改背景圖案,要在VB的程序設(shè)計(jì)中實(shí)現(xiàn)這一功能其實(shí)也很方便,具體實(shí)現(xiàn)方法如下: 首先在VB中創(chuàng)建一個(gè)窗體并在其中加入一個(gè)...
文/YUANXIANG_W
眾所周知在Windows中可以通過(guò)屬性面板任意修改背景圖案,要在VB的程序設(shè)計(jì)中實(shí)現(xiàn)這一功能其實(shí)也很方便,具體實(shí)現(xiàn)方法如下:
首先在VB中創(chuàng)建一個(gè)窗體并在其中加入一個(gè)命令按鈕,第一步在窗體的通用段中輸入以下代碼:
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
注:如果以上的聲明放在“一般模塊”下,應(yīng)在Const之前加上Public保留字,并且將Private保留字去掉。
然后在命令按鈕中的Click事件中輸入以下代碼:
'將桌面圖片設(shè)定成c:\windows\CIRCLES.bmp
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0,"c:\windows\CIRCLES.bmp", SPIF_UPDATEINIFILE)
'將桌面圖片清除
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0,"",SPIF_UPDATEINIFILE)
但以上程序設(shè)定圖片之后,必須等到下次Windows重新啟動(dòng)時(shí)才生效,如果要設(shè)定之后立刻生效,則程序須修改如下:
Const SPIF_SENDWININICHANGE = &&H2
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\windows\CIRCLES.bmp", SPIF_UPDATEINIFILE + SPIF_SENDWININICHANGE )
此外如果只有本次使用Windows時(shí)改變桌面圖片(下次開(kāi)機(jī)時(shí)還原原狀),則程序如下:
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\windows\CIRCLES.bmp", SPIF_SENDWININICHANGE ) '去掉SPIF_UPDATEINIFILE