# Netbeans und ActionListener



## OliverK_ (12. Mrz 2005)

sers Leute!

ich habe mich (wohl leider?!) entschlossen mit netbeans zu arbeiten, und diese "guardedbox" machte einem anfangs schon zu schaffen. 

also mein problem: ich weiß nicht, wie ich zb an eine liste einen actionlistener hinzufüge.

ich hoffe, irgendein kluger kopf in diesem forum kann mir diese frage beantworten, thx 

mfg, Oliver


----------



## L-ectron-X (12. Mrz 2005)

Wenn Du den GUI-Builder nutzt, kannst Du abhängig von der Component alle zur Verfügung gestellten Listener hinzufügen.
Für eine JList wäre das z.B. der ListSelectionListener.
Wenn Du einer java.awt.List einen ActionListener hinzufügen willst gehst Du so vor:
Rechtsklick auf die Component im Entwicklungsbereich und dann Events -> Action -> actionperformed


----------



## OliverK_ (12. Mrz 2005)

ich hab meine fehler dank der obigen beschreibung gefunden, ich hatte swing anstatt awt verwendent. also bei ner awt-list fand ich wie obig beschrieben den listener, aber bei swing gibt es zumindest unter dem vorhin beschriebenen weg keine listener zum hinzufügen. also:

gibt es bei swing keine actionlistener *bigfragezeichen* oder ist das bei swing nur ein anderes procedere?

thx, oliver


----------



## Beni (13. Mrz 2005)

Wie L-ectron-X gesagt hat: bei einer Swing-Liste (JList) musst du einen ListSelectionListener benutzen.

Für z.B. den JButton kannst (bzw. musst) du aber auch den ActionListener verwenden.


----------



## Guest (13. Mrz 2005)

yo, thx, hab das jetzt gefunden. ich hab  folgenden code generiert


```
jList1.addListSelectionListener(new javax.swing.event.ListSelectionListener() {
            public void valueChanged(javax.swing.event.ListSelectionEvent evt) {
                jList1ValueChanged(evt);
 ... weiter dann dann:

private void jList1ValueChanged(javax.swing.event.ListSelectionEvent evt) {                                    
    String cmd = evt.toString();
    if (cmd.equals("zwei")){
        System.out.println(zaehler++);
    ListModel lm = jList1.getModel();
    int[] sel = jList1.getSelectedIndices();
    System.out.println("Modelausgabe:");
    for (int i = 0; i<sel.length; ++i){
    String value = (String)lm.getElementAt(sel[i]);
    System.out.println("  " + value);
    }
    }
```

zur erinnerung, ich verwende die ide netbeans...

ich habe in meiner liste die elemente "eins" "zwei" und "drei", wenn "zwei" ausgewählt ist, will ich das ausgeben, wie oft zwei schon ausgewählt wurde, und danach alle ausgewählten mittels ListModel

ich hab leider noch nicht viel ahnung davon und hab einfach mal herumprobiert, aber mein problem ist, dass er GAR NICHTS ausgiebt (trotz "System.out.println). ich frage mich warum. er geht ruft doch den ListSelectionListener auf, wenn ich die markierung in der liste ändere, und somit sollte er ein paar ausgaben machen.

ich habe in dem prog keine errors, aber ein paar warnungen, hab im forum einmal gelesen, dass sie nicht zu beachten wären, aber vielleicht sind sie in meinem fall der grund:

Note: C:\Dokumente und Einstellungen\kleiner Feigling\.netbeans\Projects\TSM\src\tsm\Kurs_Buchung_Gutschrift.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

thx, oliver


----------

