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

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

Минимизация в systray по клику на taskbar...(Delphi,API) [D4, Win2k]


Nimnul ©   (2002-01-21 11:42:00) 

Использую RXLib.
Вот код:
[code]
type
TForm1 = class(TForm)
private
procedure WMSysCommand(var Msg: TWMSysCommand);message WM_SYSCOMMAND;
public
end;
................
//В систрей
procedure TForm1.WMSysCommand;
begin
if (Msg.CmdType = SC_MINIMIZE)
then
begin
ShowWindow(Application.Handle,SW_MINIMIZE);
ShowWindow(Application.Handle,SW_HIDE);
Tray.Active:=true;
end
else
inherited;
end;

//Из него
procedure TForm1.TrayClick(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
ShowWindow(Application.Handle,SW_SHOW);
ShowWindow(Application.Handle,SW_RESTORE);
Tray.Active:=false;
end;
[/code]
Минимизируется только по клику на значек минимизации ("_")
а при клике по TaskBar"у остается свернутой там же!
Какое событие надо еще обрабатывать?Что бы при клике на таскбар она тоже сворачивалась?(Как у Зе Мышь?)
ОС:Win2kRus prof


Nimnul   (2002-01-21 14:09:00) [1]

2Pat
Спасибо большое, очень нужно было.


Pat   (2002-01-21 11:52:00) [2]

Кинь на форму компонент ApplicationEvents и обрабатывай:

procedure TForm1.ApplicationEvents1Minimize(Sender: TObject);
begin
ShowWindow(Application.Handle,SW_MINIMIZE);
ShowWindow(Application.Handle,SW_HIDE);
Tray.Active:=true;
end;


Наверх

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