无法从Java中的SystemTray中获取操作

时间:2019-03-03 19:32:23

标签: java

当有人单击Java中的托盘通知时,我正在尝试打开一个网站,但是我似乎无法让我的程序收听它们,或者我丢失了一些东西。

当我单击鼠标左键时,控制台中没有任何内容,图像,名称和标题是我从twitchAPI调用中获得的信息。我正在尝试进行测试以发布到控制台并从那里进行。

我在不同于主班的班级里称呼它。 GUI加载并获取所有实时频道,我遵循为它们创建“ Channel”类的方法。在创建Channel类时,它将在获取所有信息后运行该类。我不知道这可能是问题所在,但我不知道为什么会这样。

这是我的SystemTry代码

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(getLogo());
    //Alternative (if the icon is on the classpath):
    //Image image = Toolkit.getDefaultToolkit().createImage(getClass().getResource("icon.png"));

    TrayIcon trayIcon = new TrayIcon(image, name + " just went live!");
    //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(name + " just went live!", getTitle(), MessageType.INFO);

    //trayIcon.setActionCommand("LeftClick");
    trayIcon.addMouseListener(new MouseAdapter() {
        public void mouseClicked(MouseEvent e) {
            System.out.println("test");
        }
    }); 


}

希望有人可以帮助我解决这个问题。

编辑:我可以通过打印出getMouseLisnters()[0]并给我测试来确认程序正在创建mouseListener。TestGui$5@76f001db。

0 个答案:

没有答案