Criar outro botão no form ao lado do minimizar.

Delphi

10/12/2012

Preciso acrescentar um botão no formulário, antes do minimizar, com o intuito de levar a aplicação para o Systray. Não encontrei nada sobre como criar este bendito botão. Alguém sabe algo a respeito???
Emir Neto

Emir Neto

Curtidas 0

Respostas

Flavia Santos

Flavia Santos

10/12/2012

Amigo,

Existe componentes que fazem isso, um exemplo é o TrayIcon da Jedi, ele é free e bem fácil de usar.
Da uma olhada nesse link: http://sourceforge.net/projects/jvcl/files/

Abs,
GOSTEI 0
Claudia Nogueira

Claudia Nogueira

10/12/2012

Realmente eu não faço a menor ideia se tem como você colocar um novo botão na barra, porém pelo que dá a entender, o que você quer é deixar seu sistema no SysTray quando os botões minimizar e fechar forem acionados.
Conforme a colega falou, o componente é o TrayIcon, porém tem componente nativo nas versões recentes do Delphi.
Faça uma aplicação de exemplo:
Crie uma nova aplicação;
Coloque um componente TPopupMenu com as opções Restaurar, Minimizar e Fechar;
Coloque um componente TTrayIcon, deixe a propriedade Visible = True e vincule o TPopupMenu na propriedade PopupMenu;
No private do form declare uma variável: bSair : Boolean;
No OnCreate coloque o seguinte código:
  bSair := False;
  Application.OnMinimize := Minimizar1Click;

No OnClose coloque o seguinte código:
  if not bSair then
  begin
    Minimizar1Click(Sender);
    Abort;
  end;

No OnClick do Minimizar1 coloque:
  Restaurar1.Enabled := True;
  Minimizar1.Enabled := False;
  Form2.Visible := False;

No OnClick do Restaurar1 coloque:
  Restaurar1.Enabled := False;
  Minimizar1.Enabled := True;
  Form2.Visible := True;
  Application.Restore;

E no OnClick do Fechar1 coloque:
  bSair := True;
  Close;


Me desculpe se não for isso que você pediu.
GOSTEI 0
POSTAR