Como minimizar o programa?

Delphi

14/04/2004

Quero colocar um Botão no programa, que quando clicado minimize na Barra de Inicialização (próximo ao Inciar) ou na Área de Notificação (próximo ao relógio, lado esquerdo) do Windows XP. Sabe como fazer?
Beijos
Fab


Fab

Fab

Curtidas 0

Respostas

Marcelo.c

Marcelo.c

14/04/2004

Application.Minimize;


GOSTEI 0
Fab

Fab

14/04/2004

Acho q vc não entendeu. O Application.Minimize, ´joga´ na Barra de Tarefas. Quero minimizar na Barra de Inicialização (próximo ao Iniciar bloqueado ou não) ou na Área de Notificação (próximo ao relógio, lado esquerdo) do Windows XP.


GOSTEI 0
Lucas Silva

Lucas Silva

14/04/2004

Isso que vc tá querendo é colocar como tray icon né?

não sei muito bem fazer isto, mais pesquisa ai no fórum que tem muita coisa sobre isso.


GOSTEI 0
Tatuweb

Tatuweb

14/04/2004

Se o que você quer é minimizar o aplicativo ao lado do relógio (SysTray) existe um componente gratuito que faz esse trabalho. Você pode codificar a mão (não é difícil) mas com o componente é mais rápido pois você não precisa digitar uma única linha de código. Baixe em:

[url]http://tatuweb.eti.br/systray.zip[/url]


GOSTEI 0
Fab

Fab

14/04/2004

Oi Lucas . . . obrigada pela ajuda.
Baixei o componente em zip com dois arquivos Systray .pas e .dcr.
Ao instalar o componente (Component -> Install Component), esá pedindo a ´antTaskIcon.dcu´. Estou fazendo algo errado, ou relamente veio faltando? Tentei localizar no site, mas está em contraução.
Pode auxiliar-me?
[]
Fab


GOSTEI 0
Wolverine

Wolverine

14/04/2004

esse codigo é para colocar na barra de tarefas, colocar um menu, um ´title´ e sumir com o form

Icone na Barra de Tarefas
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs ,ShellAPI, Menus;
 
const
  wm_IconMessage = wm_User;
 
type
  TForm1 = class(TForm)
  PopupMenu1: TPopupMenu;
  Lloyd1: TMenuItem;
  close1: TMenuItem;
  procedure FormCreate(Sender: TObject);
  procedure close1Click(Sender: TObject);
  procedure FormDestroy(Sender: TObject);
  procedure Lloyd1Click(Sender: TObject);
 
  private
  procedure IconTray (var Msg: TMessage);
  message wm_IconMessage;
  { Private declarations }
  public
  { Public declarations }
  nid: TNotifyIconData;
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.DFM}
 

procedure TForm1.FormCreate(Sender: TObject);
begin
  // carrega o ícone inicial
  Icon.Handle := LoadIcon (HInstance, ´MAINICON´);
  // preenche os dados da estrutura NotifyIcon
  nid.cbSize := sizeof (nid);
  nid.wnd := Handle;
  nid.uID := 1; // Identificador do ícone
  nid.uCallBAckMessage := wm_IconMessage;
  nid.hIcon := Icon.Handle;
  nid.szTip := ´title, exemplo:nome do programa´;
  nid.uFlags := nif_Message or
  nif_Icon or nif_Tip;
  Shell_NotifyIcon (NIM_ADD, @nid);
end;
 
procedure TForm1.IconTray (var Msg: TMessage);
var
  Pt: TPoint;
begin
  if Msg.lParam = wm_rbuttondown then
  begin
  GetCursorPos (Pt);
// SetForegroundWindow (Handle);
  PopupMenu1.Popup (Pt.x, Pt.y);
  end;
end;
 
procedure TForm1.close1Click(Sender: TObject);
begin
form1.close;
end;
 
procedure TForm1.FormDestroy(Sender: TObject);
begin
  nid.uFlags := 0;
  Shell_NotifyIcon (NIM_DELETE, @nid);
end;
 
procedure TForm1.Lloyd1Click(Sender: TObject);
begin
Showmessage(´Seu texto, ex: Sobre´); {Menu Popup}
end;

//seme com o form
procedure TForm1.FormActivate(Sender: TObject);
begin
  ShowWindow(FindWindow(Nil,PChar(Application.Title)),SW_HIDE);
  ShowWindow(Form1.Handle,SW_HIDE);
end;
end. 
[/code]



GOSTEI 0
POSTAR