![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Minimize приложения
IceT © (2004-10-18 12:27:00)Как можно нажав на кнопку минимизации модального окна, минимизировать все приложение. Попробовл сделать следуещее
В форме добавил
protected
procedure WMGetSysCommand(var Message : TMessage); message WM_SYSCOMMAND;
...
begin
inherited;
if (Message.wParam = SC_MINIMIZE) then Application.Minimize;
end;
Не прокатывает. Где ошибка?
Shuma (2004-10-19 12:59:00) [1]Такая констукция у меня работала.
Описание метода в разделе private формы.
procedure SysCommand(var Message: TMessage); message WM_SysCommand;
....
procedure TForm1.SysCommand(var Message: TMessage);
begin
if (Message.wParam = SC_MINIMIZE) then Application.Minimize
else
inherited;
end;
IceT (2004-10-18 13:15:00) [2]Некрасиво как-то сворачивается...
Jay (2004-10-18 12:54:00) [3]Нормально сворачивает, только модальное окно остается, его нужно отдельно сворачивать
TUser (2004-10-18 12:49:00) [4]Все равно не покатит - сообщение не дойдет до MainForm
Jay (2004-10-18 12:47:00) [5]Попробуй Unit1.WindowState := wsMinimize;
где Unit1 главная форма
TUser (2004-10-18 12:41:00) [6]Модальное окно берет на себя обработку всех сообщений посылаемых приложению - на то оно и модальное. Т.е. как бы ты ни пытался, но сообщение о том, что надо минимизироваться не дойдет до главной формы.