Смена обоев на рабочем столе

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Volkova
Начинающий
Начинающий
 
Сообщения: 14
Зарегистрирован: 10.12.2007 (Пн) 13:03

Смена обоев на рабочем столе

Сообщение Volkova » 20.02.2008 (Ср) 13:09

Как в вб можно сделать так, чтобы при нажатии на кнопочку обои на рабочем столе менялись? Если это через апи, то напишите плиз, как их декларировать. А то когда я пытаюсь любое апи впендюрить васик ругаица(

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: Смена обоев на рабочем столе

Сообщение Viper » 20.02.2008 (Ср) 13:38

Volkova писал(а):Как в вб можно сделать так, чтобы при нажатии на кнопочку обои на рабочем столе менялись? Если это через апи, то напишите плиз, как их декларировать. А то когда я пытаюсь любое апи впендюрить васик ругаица(

Через API разумеется. Судя по тексту, попытки уже делались. Код в студию, а мы посмотрим и направим.
Весь мир матрица, а мы в нем потоки байтов!

Volkova
Начинающий
Начинающий
 
Сообщения: 14
Зарегистрирован: 10.12.2007 (Пн) 13:03

Сообщение Volkova » 20.02.2008 (Ср) 16:26

Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal a As Long, ByVal a1 As Long, ByVal a2 As String, ByVal a3 As Long) As Long



Private Sub Command1_Click()

SystemParametersInfo 20, 0, "F:\yyy\FOTO\anime\1.jpg", True

End Sub

на данный код заставка(обои) становится черной, тот что до этого писала вообще ругалсо на декларацию. в общем я хочу сделать програмку меняющую обои на раб столе, как еще ктати сделать чтоб при изменении картинки прожка подстраивалась под разрешение усера на данной тачке.

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Сообщение Денис » 20.02.2008 (Ср) 16:41

под разрешение усера


Это какой -то известный боян? (с усером) а то либо я что-то пропустил, либо прозреваю еще одного человека, неправильно читающего слово user
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Volkova
Начинающий
Начинающий
 
Сообщения: 14
Зарегистрирован: 10.12.2007 (Пн) 13:03

Сообщение Volkova » 20.02.2008 (Ср) 16:49

ну юзер, один черт. на баше их так все время называют, вот народ(включая меня) и подхватывает

HiSER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 88
Зарегистрирован: 04.07.2007 (Ср) 18:17

Сообщение HiSER » 20.02.2008 (Ср) 21:02

Код: Выделить всё
Private Const SPI_SETDESKWALLPAPER = 20
Private Const SPIF_UPDATEINIFILE = &H1

Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByRef lpvParam As Any, ByVal fuWinIni As Long) As Long

Private Sub Command1_Click()
SystemParametersInfo SPI_SETDESKWALLPAPER, 0, ByVal "Путь\Имя файла", SPIF_UPDATEINIFILE
End Sub


И картинка должна быть .BMP!

http://msdn2.microsoft.com/en-us/library/ms724947.aspx

Volkova
Начинающий
Начинающий
 
Сообщения: 14
Зарегистрирован: 10.12.2007 (Пн) 13:03

Сообщение Volkova » 21.02.2008 (Чт) 8:52

спасибо, а джыпег нельзя никак втулить? или хотя бы бмп сжать до 200 кб а то прога по смене картинок на рабочем столе весящая 200 метров наверно не очень порадует взор...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 21.02.2008 (Чт) 9:05

Нельзя.
JPG можно использовать только при включенном ActiveDesktop.
Lasciate ogni speranza, voi ch'entrate.

arthur2
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1688
Зарегистрирован: 23.01.2008 (Ср) 14:35

Сообщение arthur2 » 22.02.2008 (Пт) 0:10

Грузи джипег в пикчебокс, а из него сохраняй картинку в нужный момент под нужным именем -- она сама станет бмпешной.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot и гости: 58

    TopList