Расположение иконок на рабочем столе.

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Расположение иконок на рабочем столе.

Сообщение Lumen » 22.01.2008 (Вт) 17:37

Добрый день!
У меня такой вопрос: во время работы программы приходится менять разрешение монитора. При смене его на более низкое иконки на рабочем столе меняют свое расположение. При завершении работы приложения разрешение восстанавливается, но вот иконки остаются на месте. Как можно запомнить координаты иконок, чтобы при восстановлении разрешения восстановить и их расположение на рабочем столе? В поиске вроде не нашёл.

Заранее спасибо.

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

Сообщение Viper » 22.01.2008 (Вт) 17:46

Тем не менее ответ на этот вопрос на форуме есть. На вскидку - смотерть надо в сторону окна десктопа, класс которого SysListView32. А заголовок FolderView. Сие верно по крайней мере для Windows XP.
Весь мир матрица, а мы в нем потоки байтов!

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 22.01.2008 (Вт) 18:03

Viper
Спасибо за толчок в нужном направлении. Вроде бы нашёл, если че-то не будет получаться - ещё спрошу.

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 22.01.2008 (Вт) 19:59

Есть более простое решение.
Для временной (без изменения состояния окон и иконок) смены разрешения экрана следует вызывать функцию ChangeDisplaySettings с флагом CDS_FULLSCREEN.

http://blogs.msdn.com/oldnewthing/archive/2008/01/04/6973747.aspx писал(а):Use CDS_FULLSCREEN flag to indicate that the change is temporary...
The window manager and Explorer behave differently in response to temporary as opposed to permanent display changes... If you say that the change is temporary, then the window manager and Explorer won't reposition [icons and windows] because you said that you'll set things back when you're done.
Моду создают модоки, а распространяют модозвоны.

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 22.01.2008 (Вт) 20:46

hCORe
Огромное спасибо, а я то думал, щас придется только все писать. А оказывается всё гениальное просто...
Еще раз спасибо!


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

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 84

    TopList