Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Как можно сделать чтобы во время растягивания/перетаскивания окна, его содержимое не отображалось? (в настройках системы установлено “Отображать содержимое окна при перетаскивании”).

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

Код: Выделить весь код
#include <GUIConstants.au3>

Global Const $WM_ENTERSIZEMOVE = 0x231
Global Const $WM_EXITSIZEMOVE = 0x232

$Gui = GUICreate("GUI", 200, 400, -1, -1, $WS_SIZEBOX)

GUIRegisterMsg($WM_ENTERSIZEMOVE, "WM_ENTERSIZEMOVE")
GUIRegisterMsg($WM_EXITSIZEMOVE, "WM_EXITSIZEMOVE")

$Button = GUICtrlCreateButton("Содержимое окна ;)", 50, 100)

GUISetState()

While GUIGetMsg() <> $GUI_EVENT_CLOSE
WEnd

Func WM_ENTERSIZEMOVE()
    GUISetState(@SW_LOCK)
EndFunc

Func WM_EXITSIZEMOVE()
    GUISetState(@SW_UNLOCK)
EndFunc
Это возможно?
Я тут нашёл вроде решение, но не знаю как его приминить - Пробовал посылать сообщение WM_SETREDRAW с параметром False, но окно “зависает” при попытке изменить размер/перетащить окно.

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community


Отправлено: 03:06, 14-10-2007 | #596