• alles klar - habs schon. danke patrick! ;)

    Guten Abend allerseits..

    [SIZE=-1]ich bin auf einen code-teil gestossen, der mir überhaupt nicht klar ist, und mir wieder mal meine mängel bezüglich meiner programmierkenntnisse offenbart.

    es geht um listeners. darum, dass ich einem form-objekt klick-bare stringelemente (=menue) gebe. habs grün markiert. das ist mir klar.
    dann wird diesem element jedoch noch ein listener mitgegeben. und mir ist nicht klar (rot) wie diese elemente miteinander kommunizieren sollen. das code stück funktioniert, nur verstehe ich nicht, warum.

    woher weiß der aboutListener, wenn das item &about geklickt wird?

    es werden (violett markiert) actionListeners initialisiert, die zwar einen
    [/SIZE][SIZE=-1]  public TrayIconPopup makePopup() {
    // Make new popup menu
    TrayIconPopup popup = new TrayIconPopup();
    // Add about, configure & exit item
    TrayIconPopupSimpleItem item = new TrayIconPopupSimpleItem("&About");
    item.addActionListener(new AboutListener());
    popup.addMenuItem(item);
    // Add configure item
    item = new TrayIconPopupSimpleItem("&Configure");
    item.addActionListener(new ConfigureListener());
    popup.addMenuItem(item);
    // Add a separator
    TrayIconPopupSeparator sep = new TrayIconPopupSeparator();
    popup.addMenuItem(sep);
    // Add exit item
    item = new TrayIconPopupSimpleItem("E&xit");
    item.addActionListener(new ExitListener());
    popup.addMenuItem(item);
    return popup;
    }

    [/SIZE]

    und ein stücken weiter unten werden die listeners gesetzt:


    // Callback listener handles exit button / exit popup menu
    private class ExitListener implements ActionListener {

    public void actionPerformed(ActionEvent evt)
    {
    // Free all Tray Icon resources - always call this on exit
    WindowsTrayIcon.cleanUp();
    // Exit application
    System.exit(0);
    }

    }

    // Callback listener handles about button
    private class AboutListener implements ActionListener {

    public void actionPerformed(ActionEvent evt) {
    System.out.println("About selected.");
    DemoAboutBox box = new DemoAboutBox();
    centerDialog(box);
    box.show();
    }

    }

    // Callback listener handles about button
    private class ConfigureListener implements ActionListener {

    public void actionPerformed(ActionEvent evt) {
    // TestTrayIcon.this instead of this$0 for Java 1.3 compatibility
    ConfigureBox box = new ConfigureBox();
    box.show();
    }

    }

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!