Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Модальная форма [D7, XP]


webpauk ©   (2009-09-17 17:17:00) 

Как при клике за клиентской область модальной формы, послать её сообщение закрыться?


Anatoly Podgoretsky   (2009-09-18 15:06:00) [1]


> Anatoly Podgoretsky ©   (18.09.09 15:05) [14]

Кроме этого нежелание отвечать на подобное.


Anatoly Podgoretsky   (2009-09-18 15:05:00) [2]

> webpauk  (17.09.2009 17:23:02)  [2]

Ничего, кроме возможного закрытия темы, а потом и хуже.


Игорь Шевченко   (2009-09-17 19:18:00) [3]


> в какое событие её впихнуть?


В показ формы


clickmaker   (2009-09-17 19:01:00) [4]

> нужно отловить событие когда клик происходит вне формы

на деактивацию можно повесить


webpauk   (2009-09-17 18:15:00) [5]

хм...
setcapture - вроде как процедура...
в какое событие её впихнуть?


Игорь Шевченко   (2009-09-17 18:11:00) [6]


> нужно отловить событие когда клик происходит вне формы
> нужно закрыть форму (так, как это реализовано в popupmenu)


SetCapture, если не PtInRect в клиентской части, то PostMessage (Handle, WM_SYSCOMMAND, SC_CLOSE, 0);


webpauk   (2009-09-17 18:06:00) [7]


> Игорь Шевченко ©   (17.09.09 18:02) [8]
>


нужно отловить событие когда клик происходит вне формы
нужно закрыть форму (так, как это реализовано в popupmenu)


Игорь Шевченко   (2009-09-17 18:02:00) [8]


> при клике ЗА клиентской область


велик могучим русский языка. переведи свой вопрос


webpauk   (2009-09-17 18:00:00) [9]


> Игорь Шевченко ©   (17.09.09 17:59) [6]
>


невнимательно!
при клике ЗАклиентской область


Игорь Шевченко   (2009-09-17 17:59:00) [10]


> ну и что изменится если я вместо вопроса - размещу это в
> поле темы?


больше шансов ответ получить.

по сабжу:

procedure TForm1.FormClick(Sender: TObject);
begin
 PostMessage(Handle, WM_SYSCOMMAND, SC_CLOSE, 0);
end;


webpauk   (2009-09-17 17:37:00) [11]


> clickmaker ©   (17.09.09 17:25) [3]
>


а сам пробовал?


clickmaker   (2009-09-17 17:27:00) [12]

> на любое WM_NCXXX

тьфу... это лишнее


clickmaker   (2009-09-17 17:25:00) [13]

WM_NCHITTEST
вернуть HTCLOSE на любое WM_NCXXX


webpauk   (2009-09-17 17:23:00) [14]


> Игорь Шевченко ©   (17.09.09 17:19) [1]
>


ну и что изменится если я вместо вопроса - размещу это в поле темы?
сообщение короткое - в таком случае вопрос продублирует тело сообщения...


Игорь Шевченко   (2009-09-17 17:19:00) [15]

как наконец прочитать правила форума и нормально написать тему вопроса ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо