Neste artigo, faremos um pequeno programa para mostrar as funcionalidades e facilidades da utilização do componente TrayIcon que acompanha o BDS 2006. As utilidades deste componente variam muito de aplicação para
aplicação, mas seu uso vem crescendo cada vez mais e mais. Muitos dos atuais aplicativos já utilizam a tecnologia. Entre eles podemos
citar o MSN,ICQ, Kazza, os Anti-Virus entre muitos outros. Hoje em dia é
normal termos uma dezena de ícones ao lado do relógio.
Bem, chega de papo furado, e vamos botar a mão na massa.
Primeiro passo, vamos inserir o Componente
TTrayIcon que se encontra na palheta Additional
e Samples, isso mesmo, ele se encontra nas duas palhetas.

Figura 1 - Componente TTrayIcon inserido no form.
Segundo Passo, vamos inserir alguns componentes que vai nos
ajudar a entender melhor o funcionamento do componente
TTrayIcon. São eles:
1
ComboBox
3 Button
3
Edit
4 Label
Altere os Captions dos componentes e o layout do Form para ficar parecido com
o modelo abaixo:

Figura 2 - Interface do programa de exemplo.
Terceiro Passo, para que tudo funcione é preciso alterar
algumas propriedades dos componentes. Do componente
TTrayIcon1, altere a propriedade VISIBLE para
TRUE e do
componente ComboBox1, insira em ITEMS
os itens mostrados na imagem abaixo:

Figura 3 - Ítens que devem ser adicionados ao ComboBox.
Quarto Passo, agora vamos começar a programar. Primeiramente,
de 2 cliques no botão “Aplicar” e insira os seguintes
códigos:
Procedure
TForm1.Button1Click(Sender: TObject); begin //Atribui o Valor do Edit1 um para a propriedade Balloon
Hint //O texto do Edit1 será
exibido dentro do
Balloon TrayIcon1.BalloonHint:=Edit1.Text;
//Atribui o Valor do Edit2 um para a propriedade
Balloon Title //O Texto do Edit2 será exibido dentro do Titulo do
Balloon TrayIcon1.BalloonTitle:=Edit2.Text;
//Atribui o Valor do Edit3 um para a propriedade
Hint //O Texto do Edit3 será exibido ao parar o mouse sobre o
Icone TrayIcon1.Hint:=Edit3.Text;
//Atribui o Tipo de Mensagem ao
Balloon //Somente é exibido, se o Balloon Title tiver sido atribuido algum
valor Case
ComboBox1.ItemIndex of 0: begin
TrayIcon1.BalloonFlags:=bfNone; end; 1: begin
TrayIcon1.BalloonFlags:=bfWarning; end; 2: begin
TrayIcon1.BalloonFlags:=bfError; end; 3: begin
TrayIcon1.BalloonFlags:=bfInfo; end; end;
//Exibe o Ballon com as propriedades setadas
acima TrayIcon1.ShowBalloonHint; end;
Todas as linhas estão bem comentadas, mas para que tudo fique
perfeito, ainda há um último detalhe a ser feito: Esconder o
programa da barra de tarefas. Vamos ao próximo passo então.
Quinto Passo, insira os seguintes código no botão
“Esconder Barra”:
ProcedureTForm1.Button2Click(Sender:
TObject); var H :
HWnd; begin H :=
FindWindow(Nil,'Project1');
//troque project1 pelo nome do seu
projeto ShowWindow(H,SW_HIDE); //Oculta o Programa da Barra
Button3.Enabled:=True; //Habilita o Botão
Mostrar Barra Button2.Enabled:=False; //Desabilita o Botão Esconder Barra end;
Sexto Passo, insira os seguintes códigos no botão
“Mostrar Barra”:
ProcedureTForm1.Button3Click(Sender:
TObject); var H :
HWnd; begin H :=
FindWindow(Nil,'Project1');
//troque project1 pelo nome do seu
projeto ShowWindow(H,SW_SHOW); //Mostra o Programa a barra
Button3.Enabled:=False; //Desabilita o Botão
Mostrar Barra Button2.Enabled:=True; //Habilita o Botão Esconder Barra end;
Com esses códigos já podemos utilizar os principais recursos
do
TryIcon, mas você ainda deve estar se perguntando: "e o ícone,
como devo fazer para alterá-lo?" Simples! no componente
TryIcon1, dê um duplo clique na propriedade Icon
e escolha o ícone desejado. Caso não seja selecionado nenhum ícone, o ícone da
aplicação será utilizado automaticamente pelo Delphi.
Bem, tentei deixar este artigo o mais completo possível e
também bem fácil de programar. Caso tenha alguma dúvida de como utilizar
o componente, entre em contato comigo que tentarei esclarecer todas as dúvidas
sobre
o
mesmo.
PS.: Vale lembrar que este artigo só serve para o BDS
2006, pois o mesmo já acompanha o componente TryIcon.
Para
utilizar em outras versões do Delphi, é necessário
introduzir um componente de terceiros na versão respectiva do seu Delphi,
o que seria assunto para um outro artigo.
Clique aqui para baixar os fontes do exemplo.
Fernando - hotforms
Contato: fernando.hotforms@terra.com.br
|