Whats new? | Login | Parceiros
Cadastre-se | Atendimento | RSS
+ Java:
artigos   |   vídeos   |    cursos   |    mais

Adicionando ícones ao System Tray

Aprenda a adicionar ícones ao System Tray e utilize isto em sua aplicação.

EDUARDO OLIVEIRA SPÍNOLA
Eduardo Oliveira Spínola (eduspinola@gmail.com - http://eduspinola.googlepages.com/home) é Bacharel em Ciência da Computação pela Universidade Salvador - UNIFACS, em 2005. Atualmente fazendo o Mestrado em Engenharia de Software pela Universidade Salv...


Ver space do autor


Estatísticas:
Visualizações:
16116
Favoritado:
 2 vez(es)
Conteúdo:
Didática:
Utilidade:
2 0
votos: 6

Serviços:



Adicionando ícones ao System Tray

O system tray é situada no Windows Taskbar, geralmente no canto direito inferior ao lado do relógio. Ela contém ícones diminutos para o acesso fácil às funções do sistema tais como ajustes do antivírus, impressora, modem, o volume sadio, o status da bateria, e o mais. O Duplo-clique ou o clique com botão direito no ícone permitem a visualização e o acesso aos detalhes e aos controles da aplicação que estiver neste local. O system tray foi introduzida primeiramente com Microsoft Windows 95, e é usada agora no Windows 98, 98SE, NT 4.0, 2000, e XP. A Figura 1 mostra exatamente os tray icons no sistema operacional Windows XP.

O Java 1.5 não tem uma api permitindo que você adicione ícones ao system tray, logo, você necessita usar uma biblioteca que use JNI (Java Native Interface) habilitada a implementar esta funcionalidade.

JDIC (JDesktop Integration Components) (https://jdic.dev.java.net/) permite a criação de tray icon no desktop (no System Tray do sistema para plataformas de Windows, ou na área da notificação para plataformas do Unix), com um subtítulo (text), um ícone animado, e um menu que contem ícones. Pode também apresentar um tooltip quando o mouse fica parado sobre o ícone da bandeja.

dicatrayicon.JPG
Figura 1: Tray icons

O exemplo abaixo mostra como implementer algumas funcionalidades. Você pode aprender mais sobre isso na documentação do JDIC.

import java.awt.event.*;
import javax.swing.*;
import org.jdesktop.jdic.tray.*;

public class TestTray {
    public static JMenuItem quit;
    
    public TestTray() {
        JPopupMenu menu = new JPopupMenu("Tray Icon Menu");
        menu.add(new JMenuItem("Test Item"));
        menu.addSeparator();
        JMenuItem quitItem = new JMenuItem("Quit");
        quitItem.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent evt) {
                System.exit(0);
            }});
        menu.add(quitItem);
        
        // O arquivo “devmedia.gif” deve existir no mesmo diretório

        // onde estiver esta classe.
        ImageIcon icon = new ImageIcon("duke.gif");
        TrayIcon ti = new TrayIcon(icon, "JDIC Tray Icon API Test", menu);

        // Ação para clique com botão esquerdo.
        ti.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                JOptionPane.showMessageDialog(null, 
                    "JDIC Tray Icon API Test!""About",
                    JOptionPane.INFORMATION_MESSAGE);
            }
        });
               
        SystemTray tray = SystemTray.getDefaultSystemTray();
        tray.addTrayIcon(ti);
    }

    public static void main(String[] args) {
        new TestTray();
    }   
}





Participe! Inclua um comentário
[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar ;-)



 


[Fechar]
Este post está disponível para assinantes da Java Magazine ou para quem possui Créditos DevMedia.

  Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!

Plano conveniência – Neste plano este post custa R$ 0,00 (Compre agora)
Esse plano permite que você compre somente um post, pagando por ele seu preço sem desconto.

Plano ocasional: Aqui este post custa: R$ -1,00 (assinante) ou R$ -1,00 (não-assinante)
Este plano é ideal para quem tem interesse em mais de um post. Você compra um mínimo de R$ 50,00 em créditos e ganha, em média, 50% de desconto no preço do post. Compre Créditos agora!

Assinatura de Créditos (Plano econômico) – Aqui este post custa R$ -1,00
Este plano é ideal para quem tem interesse em muitos posts. Com esse plano você compra R$ 180,00 em créditos e ganha, em média, 80% de desconto no preço do post. Assine este plano agora!

> Saiba mais sobre o Sistema de Créditos DevMedia
DevMedia Group   www.devmedia.com.br   |   www.javafree.org   |   www.mrbool.com
2010 - Todos os Direitos Reservados a DevMedia Group - (21) 3382-5038