Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
wird nicht angezeigt egal wo ich es einfüge etc...
Ich habe in meiner Registry schon nachgeschaut und die "EnableBalloonTips" sind auf "1" gesetzt sprich aktiviert, waren vorher auf 0. Habe neustart gemacht , Programm neu ausgeführt dennoch wird keine msg angezeigt ??
Ich weiß noch nicht einmal wie diese "displayMessage" aussieht, ob das überhaupt ein ballontyp ist der da erscheint sprich so ein gelbes Ding mit einem "X" rechts oben oder ob das ein kleines Fenster ist, denn dann wäre ja meine registry Änderungen eh egal. Schade dass sich Sun so restriktiv an eine beschränkte Informationpolitik hält, was die SystemTray angeht - Falsche Screenshots von JDIC und keine Screenshots von der "displayMessage".
So jetzt habe ich nochmals den Original code getestet von Sun:
Wenn ich einen doppelklick mit der linken Maustaste mache, DANN wird eine sprechblase mit "X" rechts oben angezeigt, ABER NUR DANN ??? Warum?
Wo steht in dem Code was von Doppelklick? Da steht lediglich wenn irgendwas mit dem trayicon gemacht wird (ist ja nicht definiert) dann zeige die "displayMessage" an. Kann mir das einer erklären?
Code:
public class SystemTrayTest
{
public SystemTrayTest()
{
final TrayIcon trayIcon;
if (SystemTray.isSupported()) {
SystemTray tray = SystemTray.getSystemTray();
Image image = Toolkit.getDefaultToolkit().getImage("pasteurl.png");
MouseListener mouseListener = new MouseListener() {
public void mouseClicked(MouseEvent e) {
System.out.println("Tray Icon - Mouse clicked!");
}
public void mouseEntered(MouseEvent e) {
System.out.println("Tray Icon - Mouse entered!");
}
public void mouseExited(MouseEvent e) {
System.out.println("Tray Icon - Mouse exited!");
}
public void mousePressed(MouseEvent e) {
System.out.println("Tray Icon - Mouse pressed!");
}
public void mouseReleased(MouseEvent e) {
System.out.println("Tray Icon - Mouse released!");
}
};
ActionListener exitListener = new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println("Exiting...");
System.exit(0);
}
};
PopupMenu popup = new PopupMenu();
MenuItem defaultItem = new MenuItem("Exit");
defaultItem.addActionListener(exitListener);
popup.add(defaultItem);
trayIcon = new TrayIcon(image, "Tray Demo", popup);
ActionListener actionListener = new ActionListener() {
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(mouseListener);
try {
tray.add(trayIcon);
} catch (AWTException e) {
System.err.println("TrayIcon could not be added.");
}
} 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();
}
}
darum gehts mir in 1. Linie ja net sondern, warum geht das Teil nur bei doppelklick wobei der doppelklick nirgends im code definiert ist (ich seh zumindest nix)
richtig, NUR warum erscheint die MSG box nur bei einem doppelklick mit der linken maustaste ??? warum nicht bei einem normalen klick?? Denn das ist auch ein ActionEvent !!!
Der Entwickler der API hat das halt so gewollt. Möglicherweise weil ein Einzelklick hier eher die Bedeutung
eines Abbruchs zu haben scheint, um beispielsweise Tooltip oder Popup abzubrechen.
Der Entwickler der API hat das halt so gewollt. Möglicherweise weil ein Einzelklick hier eher die Bedeutung
eines Abbruchs zu haben scheint, um beispielsweise Tooltip oder Popup abzubrechen.
ok danke wie auch immer habe einen trayIcon.addMouseListener(mouseListener); auf das trayicon gesetzt und bei mouseclicked funzt es jetzt auch, danke für die Antworten.