Окно уведомлений в системном трее - PullRequest
0 голосов
/ 18 апреля 2020

Когда я пытаюсь запустить следующий код из Intellij IDE, все работает нормально. Я получаю уведомление в системном трее, и когда я щелкаю по нему, вызывается мой слушатель.

Но когда я пытаюсь добиться этого после упаковки кода в jar, уведомление получено, а событие click - нет работа.

public void displayTray(String message) throws AWTException {
        SystemTray tray = SystemTray.getSystemTray();
        Image image = Toolkit.getDefaultToolkit().createImage("image.png");

        ActionListener listener = new ActionListener()
        {
            public void actionPerformed(ActionEvent e)
            {
                FileUtility fileUtility = new FileUtility();
                File chartImage = new File("image.png");
                Desktop dt = Desktop.getDesktop();
                try {
                    dt.open(chartImage);
                    System.exit(0);
                } catch (IOException ex) {
                    ex.printStackTrace();
                }
            }
        };

        TrayIcon trayIcon = new TrayIcon(image, "Tray Demo");
        trayIcon.setImageAutoSize(true);
        trayIcon.addActionListener(listener);
        trayIcon.setToolTip("Redifining WFH");

        tray.add(trayIcon);;
        trayIcon.setImage(image);
        trayIcon.displayMessage("title", message + "\n Click to see detailed chart", TrayIcon.MessageType.INFO);
...