Comment faire une Notification Windows en Java

Dans Windows 10 il y a une notification qui s'ouvre en bas à droite de l'écran et je les trouve très utiles.

il existe un moyen de créer des notifications Windows en Java? C'est à quoi ils ressemblent:

sample of windows notification desired

17
demandé sur Steven Vascellaro 2015-12-28 11:40:10

3 réponses

je peux réussir à produire ce résultat à l'aide de cette très simple exemple de code:

screenshot

import java.awt.*;
import java.awt.TrayIcon.MessageType;
import java.net.MalformedURLException;

public class TrayIconDemo {

    public static void main(String[] args) throws AWTException, MalformedURLException {
        if (SystemTray.isSupported()) {
            TrayIconDemo td = new TrayIconDemo();
            td.displayTray();
        } else {
            System.err.println("System tray not supported!");
        }
    }

    public void displayTray() throws AWTException, MalformedURLException {
        //Obtain only one instance of the SystemTray object
        SystemTray tray = SystemTray.getSystemTray();

        //If the icon is a file
        Image image = Toolkit.getDefaultToolkit().createImage("icon.png");
        //Alternative (if the icon is on the classpath):
        //Image image = Toolkit.getDefaultToolkit().createImage(getClass().getResource("icon.png"));

        TrayIcon trayIcon = new TrayIcon(image, "Tray Demo");
        //Let the system resize the image if needed
        trayIcon.setImageAutoSize(true);
        //Set tooltip text for the tray icon
        trayIcon.setToolTip("System tray icon demo");
        tray.add(trayIcon);

        trayIcon.displayMessage("Hello, World", "notification demo", MessageType.INFO);
    }
}
33
répondu RAnders00 2018-08-07 09:55:46

cela peut être réalisé avec le barre des tâches et TrayIcon classes. De plus, s'il s'agit d'une nouvelle API pour vous, vous pouvez vérifier le tutoriel dédié " comment utiliser le plateau du système".

2
répondu Lolo 2015-12-28 09:02:03

la bonne réponse fonctionne pour moi dans jdk 1.8 en utilisant boîte à outils.getDefaultToolkit () au lieu de la Trousse à outils.getToolkit ()

0
répondu user2608645 2017-06-29 20:05:20