寒假裡就開始寫這個了,但是斷斷續續的,現在終於寫完了。看到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
大概思路就這些吧。