Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.03;
Скачать: CL | DM;

Вниз

Минимизация формы.   Найти похожие ветки 

 
badaxe ©   (2003-01-22 10:37) [0]

Народ, может ламерский вопрос, но...
Какое событие наступает во время минимизации формы?


 
smok_er   (2003-01-22 10:43) [1]

>>Какое событие наступает

Наверное имеется ввиду сообщение?
При щелканьи на кнопочку "minimize" меню окна - WM_SYSCOMMAND
но наверное и что-то типа WM_MINIMIZE думаю есть.


 
Anatoly Podgoretsky ©   (2003-01-22 11:29) [2]

У формы таких событй нет, есть у TApplication


 
badaxe ©   (2003-01-23 13:26) [3]

Да...
Но возникла другая проблема: если на экране несколько форм(приложений), то свернувшись моя форма остается неактивной и для того чтобы Application.OnMinimize сработало надо на нее еще раз кликнуть.
Вообще суть дела заключается в селедеющем: я поместил иконку своего приложения в tray и теперь хочу чтобы при сворачивании формы она исчезала с экрана и оставалась только в tray.
Подскажите как быть... может я вообще не по тому пути пошел?


 
LongIsland ©   (2003-01-23 13:36) [4]

var
WnHnd : Integer;

begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);

WnHnd := GetWindowLong(Application.Handle, GWL_EXSTYLE);
if (WnHnd and WS_EX_TOOLWINDOW) = WS_EX_TOOLWINDOW then
WnHnd := WnHnd - WS_EX_TOOLWINDOW
else
WnHnd := WnHnd or WS_EX_TOOLWINDOW;
Application.MainForm.Hide;
SetWindowLong(Application.Handle, GWL_EXSTYLE, WnHnd);
Application.MainForm.Show;

Application.Run;
end.

Теперь только в трее будет


 
Anatoly Podgoretsky ©   (2003-01-23 13:45) [5]

Это

if (WnHnd and WS_EX_TOOLWINDOW) = WS_EX_TOOLWINDOW then
WnHnd := WnHnd - WS_EX_TOOLWINDOW

можно записать так

WnHnd := WnHnd and not WS_EX_TOOLWINDOW;



 
Roma ©   (2003-01-23 14:43) [6]

> badaxe © (23.01.03 13:26)

procedure TForm1.ApplicationEvents1Minimize(Sender: TObject);
begin
ShowWindow(Application.Handle, SW_HIDE);
end;


На double-click (или на что хочешь) по иконке в tray:
ShowWindow(Application.Handle, SW_SHOW);


 
badaxe ©   (2003-01-24 14:01) [7]

Народ всем спасибо большое !!
Все работает, но я дуиаю меня простят если я внутри этого сабжа задам еще один вопрос :))
Как сделать так чтоб форма моя появлялась поверх всех остальных открытых окон?


 
Чих-пых ©   (2003-01-25 06:01) [8]

У неё проперти такое есть.



Страницы: 1 вся ветка

Текущий архив: 2003.02.03;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
1-4984
AlexG
2003-01-23 14:23
2003.02.03
Массив в Ресурс


1-4931
NewGuest
2003-01-26 10:57
2003.02.03
Мастера и любители прошу обратить внимание на данный код...


1-4949
viper
2003-01-23 11:07
2003.02.03
Иконка


8-5081
brestmarket
2002-10-18 02:59
2003.02.03
Как на Button нарисовать свою картинку и проиграть звук?


7-5294
Soft
2002-11-22 19:19
2003.02.03
Изменение приоритета в Win2K