Bonjour,

J'ai quelques soucis dans le développement d'une application graphique Java. Cette appli doit s'ouvrir uniquement dans la barre des tâches et dérouler un menu quand on passe la souris dessus. Dans ce menu je dois implémenter deux entrées qui permettent de lancer un coup de fil skype et lancer une plateforme mail.

J'ai trouver quelle classe utilisé pour faire tourner l'appli en barre des tâches. Je vous joins le code ci-dessous:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
package systemtray;
 
import java.awt.*;
import java.awt.event.*;
import java.util.logging.Level;
import java.util.logging.Logger;
 
public class SystemTrayTest
{
 
    public SystemTrayTest()
    {
 
        final TrayIcon trayIcon;
 
        if (SystemTray.isSupported()) {
            try {
                SystemTray tray = SystemTray.getSystemTray();
                Image image = Toolkit.getDefaultToolkit().getImage("tray.gif");
 
                MouseAdapter mouseAdapter = new MouseAdapter() {
 
                    /*@Override
                    public void mouseClicked(MouseEvent e) {
                        System.out.println("Tray Icon - Mouse clicked!");                 
                    }
                    @Override
                    public void mouseEntered(MouseEvent e) {
                        System.out.println("Tray Icon - Mouse entered!");                 
                    }
                    @Override
                    public void mouseExited(MouseEvent e) {
                        System.out.println("Tray Icon - Mouse exited!");                 
                    }
                    @Override
                    public void mousePressed(MouseEvent e) {
                        System.out.println("Tray Icon - Mouse pressed!");                 
                    }
                    @Override
                    public void mouseReleased(MouseEvent e) {
                        System.out.println("Tray Icon - Mouse released!");                 
                    }
                     */
                };
 
                ActionListener exitListener = new ActionListener() {
                    @Override
                    public void actionPerformed(ActionEvent e) {
                        System.out.println("Exiting...");
                        System.exit(0);
                    }
                };
 
                PopupMenu popup = new PopupMenu();
                MenuItem exit = new MenuItem("Exit");
                MenuItem skype = new MenuItem("Skype");
                exit.addActionListener(exitListener);
                popup.add(exit);
                popup.add(skype);
 
                trayIcon = new TrayIcon(image, "Tray Demo", popup);
 
                /*ActionListener actionListener = new ActionListener() {
                    @Override
                    public void actionPerformed(ActionEvent e) {
                        trayIcon.displayMessage("Action Event", 
                            "An Action Event Has Been Peformed!",
                            TrayIcon.MessageType.INFO);
                    }
                };*/
 
                trayIcon.setImageAutoSize(true);
                /*trayIcon.addActionListener(actionListener);*/
                trayIcon.addMouseListener(mouseAdapter);
 
                //    Depending on which Mustang build you have, you may need to uncomment
                //    out the following code to check for an AWTException when you add 
                //    an image to the system tray.
 
                //    try {
                          tray.add(trayIcon);
                //    } catch (AWTException e) {
                //        System.err.println("TrayIcon could not be added.");
                //    }
            } catch (AWTException ex) {
                Logger.getLogger(SystemTrayTest.class.getName()).log(Level.SEVERE, null, ex);
            }
 
        } else {
            System.err.println("System tray is currently not supported.");
        }
    }
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args)
    {
        SystemTrayTest main = new SystemTrayTest();
    }
 
}
Mes soucis à ce stade sont les suivants:

1. Je n'arrive pas à trouver l’événement associé au focus de la souris et comment l'implémenter.

2. Comment lancer lancer skype/mail depuis une entrée dans le popupMenu.

Je vous remercie d'avance,

Swordi