Обновить 'экран

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

Обновить 'экран

Сообщение 13GHOST » 11.12.2008 (Чт) 20:48

вот столкнулся с такой пролемой... Значит стоит расширение рабочего стола 1024х768. В это время запускается моя программа. Затем я запускаю игру, которая работает на расширении 800х600. После того как выходишь из игры, при попытке получить размеры экрана:
SystemParametersInfo SPI_GETWORKAREA, ByVal 0, Trect, ByVal 0
возвращаются неверные данные, как будто сейчас расширение 800х600. То же самое возвращает Screen.width. Можно ли как-нибудь обновить эти данные?

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Re: Обновить 'экран

Сообщение Alexanbar » 11.12.2008 (Чт) 22:27

Можно ещё попробовать GetMonitorInfo.

13GHOST
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 305
Зарегистрирован: 09.01.2004 (Пт) 12:48

Re: Обновить 'экран

Сообщение 13GHOST » 11.12.2008 (Чт) 23:07

повнимательней присматрелся... оказывается функции работают нормально, это Screen.TwipsPerPixelX меняется... чем его можно заменить?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Обновить 'экран

Сообщение Хакер » 12.12.2008 (Пт) 1:03

Апишкой. GetDeviceCaps.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

13GHOST
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 305
Зарегистрирован: 09.01.2004 (Пт) 12:48

Re: Обновить 'экран

Сообщение 13GHOST » 12.12.2008 (Пт) 9:07

эм. не понял как ее заюзать... можно поподробней? :oops:

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

Re: Обновить 'экран

Сообщение Денис » 12.12.2008 (Пт) 9:31

Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

13GHOST
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 305
Зарегистрирован: 09.01.2004 (Пт) 12:48

Re: Обновить 'экран

Сообщение 13GHOST » 12.12.2008 (Пт) 15:37

ну вообще толком ничего не нашел :(.
Вообщем вопрос таков: в одном пикселе всегда содержиться одиннаковое количество ТВИПов? или это зависит от настроек системы?

Debugger
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1667
Зарегистрирован: 17.06.2006 (Сб) 15:11

Re: Обновить 'экран

Сообщение Debugger » 12.12.2008 (Пт) 15:51

Посмотри "Золотые Топики": viewtopic.php?f=15&t=36567, а оттуда - viewtopic.php?t=34837

13GHOST
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 305
Зарегистрирован: 09.01.2004 (Пт) 12:48

Re: Обновить 'экран

Сообщение 13GHOST » 12.12.2008 (Пт) 19:30

решил проблему с помощью SetWindowPos, координаты Х и У указываешь в пикселях, никаких проблем с твипами). всем спасибо)


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

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

Сейчас этот форум просматривают: Google-бот и гости: 91

    TopList