Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > Фон рабочего стола


Автор: Error1 11.5.2006, 18:30
Люди скажите пожалуйста как можно поменять обой рабочего стола с помощью VB 
например: когода заходиш в прогу она автоматически меняет Обой Рабочего Стола  

Автор: IcyJet 11.5.2006, 20:49
Надо использовать знаменитую Win32API smile !

Добавь на форму 2 CommandButton. Первая кнопка помещает на рабочий стол любой рисунок, вторая - убирает этот рисунок.

Код

'Взято с VBNet

Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As String, ByVal fuWinIni As Long) As Long
Const SPI_SETDESKWALLPAPER = 20

Private Sub Command1_Click()
SystemParametersInfo SPI_SETDESKWALLPAPER, 0, "D:\Basic\tmpProj\Load.bmp", True
'Замени путь D:\Basic\tmpProj\Load.bmp на нужный тебе файл рисунка в формате bmp
End Sub

Private Sub Command2_Click()
SystemParametersInfo SPI_SETDESKWALLPAPER, 0, 0, False
End Sub 


Ну это конечно надо оформить в процедурку красивенькую smile, а так в принцепе должен разобратся. 

Автор: cardinal 11.5.2006, 20:55
http://www.activevb.de/tipps/vb6tipps/tipp0054.html 

Автор: ~FoX~ 12.5.2006, 14:37
Путь к обои прописан в реестре по адресу HKEY_CURRENT_USER\Control Panel\Desktop\Wallpaper
Пишишь туда адрес своей картинки и посылаешь всем сообщение об обновлении через SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, Nil, SPIF_SENDWININICHANGE);
В факе есть примеры по работе с реестром....Удачи
  

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)