Форум: "Основная";
Текущий архив: 2004.04.18;
Скачать: [xml.tar.bz2];
ВнизКак отловить событие сворачивания формы? Найти похожие ветки
← →
kdy © (2004-03-26 11:22) [0]В приложении несколько форм - хочу чтоб при сворачивании любой из них сворачивалось всё приложение. Но события OnMinimize у формы нет.
← →
Rouse_ © (2004-03-26 11:33) [1]TApplicationEvents.OnMinimize
← →
Игорь Шевченко © (2004-03-26 11:34) [2]type
TMyForm = class(TForm)
...
private
procedure WMSysCommand (var Message: TMessage); message WM_SYSCOMMAND;
...
end;
procedure TMyForm.WMSysCommand (var Message: TMessage);
begin
if Message.WParam = SC_MINIMIZE then
PostMessage(Application.MainForm.Handle, WM_SYSCOMMAND, SC_MINIMIZE, 0);
inherited;
end;
И так в каждой форме :)
← →
Rouse_ © (2004-03-26 11:38) [3]Опс, там же несколько форм, дествительно просмотрел...
← →
kdy © (2004-03-26 12:10) [4]> [2] Игорь Шевченко © (26.03.04 11:34)
Спасибо. Помогло. Сделал так
procedure TForm2.WMSysCommand (var Message: TMessage);
begin
if Message.WParam = SC_MINIMIZE then begin
// PostMessage(Application.MainForm.Handle, WM_SYSCOMMAND, SC_MINIMIZE, 0);
Application.Minimize;
exit;
end;
inherited;
end;
PS А как свернуть такое приложение щелчком мышки по его кнопке на панели задач?
← →
Игорь Шевченко © (2004-03-26 12:49) [5]
> А как свернуть такое приложение щелчком мышки по его кнопке
> на панели задач
Какое "такое" ?
Тот код, что написан, всего лишь дополняет к стандартным возможностям возможность сворачивать приложение из неглавной формы. Стандартные возможности приведенный код пи этом не затрагивает, поэтому вопрос непонятен.
← →
kdy © (2004-03-26 16:07) [6]Уточняю вопрос.
1)Когда запущено приложение и активна одна только главная форма - это приложение сворачивается щелчком мышки по его кнопке на панели задач.
2)Когда запущено приложение и активна не главная форма, причём модальная - это приложение НЕ сворачивается щелчком мышки по его кнопке на панели задач.
Вопрос: как свернуть приложение в случае 2) щелчком мышки по его кнопке на панели задач?
← →
panov © (2004-03-26 19:45) [7]
...
procedure MyWndProc(var Message: TMessage);message WM_ACTIVATEAPP;
...
procedure TForm2.MyWndProc(var Message: TMessage);
begin
if Message.WParam=0
then Application.Minimize
else Application.Restore;
end;
...
← →
Vemer © (2004-03-27 00:11) [8]Tot в кладовке вариант лежит...
http://delphibase.endimus.com/?action=viewfunc&topic=appctrl&id=10513
← →
kdy © (2004-03-29 10:15) [9]> [7] panov © (26.03.04 19:45)
Приложение сворачивается, но только до тех пор, пока я держу нажатой кнопку мышки. Отпускаю мышку - приложение снова разворачивается.
>[8] Vemer © (27.03.04 00:11)
Именно так я и сделал.
Теперь возник другой вопрос - [6] kdy © (26.03.04 16:07)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.04.18;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.034 c