2
バルーンメッセージをポップアップ表示させるためにシステムのアイコンを使ってみたいと思っていますが、そうではありません。これがコードです。単純なif文が実行されても何も起こらなければ、ポップアップが表示されます。システムトレイアイコンが表示され、左クリックするとメニューが表示されます。システムトレイのバルーンメッセージがJavaに表示されない
package systemtray;
import java.awt.*;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Systemtray {
public static void main(String[] args) {
TrayIcon trayIcon = null;
if (SystemTray.isSupported()) {
// get the SystemTray instance
SystemTray tray = SystemTray.getSystemTray();
// load an image
Image image = Toolkit.getDefaultToolkit().getImage("D:/xxx/facebook.jpg");
// create a action listener to listen for default action executed on the tray icon
ActionListener listener = new ActionListener() {
public void actionPerformed(ActionEvent e) {
// execute default action of the application
}
};
// create a popup menu
PopupMenu popup = new PopupMenu();
//create menu item for the default action
MenuItem defaultItem = new MenuItem("A menu item");
defaultItem.addActionListener(listener);
popup.add(defaultItem);
/// ... add other items
// construct a TrayIcon*/
trayIcon = new TrayIcon(image, "Tray Demo", popup);
int a = 0;
int b = 1;
if (a + b == 1){
trayIcon.displayMessage("Message Title",
"Message Content",
TrayIcon.MessageType.INFO);
}
// set the TrayIcon properties
trayIcon.addActionListener(listener);
// ...
// add the tray image
try {
tray.add(trayIcon);
} catch (AWTException e) {
System.err.println(e);
}
// ...
} else {
// disable tray option in your application or
// perform other actions
}
// ...
// some time later
// the application state has changed - update the image
// if (trayIcon != null) {
// trayIcon.setImage(updatedImage);
//}
// ...
}
}
暗いところで撮影しますが、アイコンがトレイに追加される前にバルーンを表示しようとしています。トレイに追加して、バルーンを表示してください。 –
ありがとう、あなたは正しい –