Sistema na bandeja do relógio mas como fazer quando minimiza

Delphi

25/06/2003

Eu já consegui colocar o ícone na bandeja do relógio com o seguinte código no OnCreate do MainForm.
Mas quando eu abro a aplicação e minimizo novamente, além de ficar na bandeja fica na barra de tarefas também (o que não é pra acontecer)
Alguem tem alguma solução ?

with NotifyIconData do
begin
// cbSize tem o tamanho da estrutura
cbSize := Sizeof(TNotifyIconData);
// Wnd é a janela que recebera as mensagens
Wnd := Self.Handle;
// uId é a identificação do ícone , para o caso de muitos ícones
uId := 0;
// uCallbackMessage é o número da mensagem que será enviada quando houver eventos no ícone
uCallbackMessage := WM_TRAYICON;
// uFlags indica quais os campos da estrutura são válidos
uFlags := NIF_ICON or NIF_TIP or NIF_MESSAGE;
// hIcon indica o ícone que será colocado na barra de tarefas
hIcon := Application.Icon.Handle;
// szTip é a dica que aparece
szTip := ´Win2Unix File Transfer´
end;
// adiciona o ícone
Shell_NotifyIcon(NIM_ADD,@NotifyIconData);


Nelsonota

Nelsonota

Curtidas 0

Respostas

Thaisandrade

Thaisandrade

25/06/2003

Tenta fazer assim:
Application.OnMinimize:= EscondeForm;

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

Eu uso de forma diferente, só escondo da barra de tarefas quando o form é fechado... mas acho que com alguma modificação vai funcionar quando minimizar também.


GOSTEI 0
Msd

Msd

25/06/2003

Experimenta o componente Tryicon, funciona muito bem.


GOSTEI 0
Msd

Msd

25/06/2003

Experimenta o componente Tryicon, funciona muito bem.


GOSTEI 0
POSTAR