schaich: getActionCommand

Ich lese gerade "Das Handbuch der Java-Programmierung" und da wird manchmal zuerst die Beschriftung des Buttons in actionPerformed abgefragt und dann werden erst dinge verändert.

Warum??

wenn ich zu einem bestimmten objekt z.b. einem Button einen ActionListener hinzufüge, dann ist doch logisch dass beim Ausführen von actionPerformed auch dieser Button geklickt wurde oder nicht??

MfG Schaich

  1. Hallo,

    Ich lese gerade "Das Handbuch der Java-Programmierung" und da wird manchmal zuerst die Beschriftung des Buttons in actionPerformed abgefragt und dann werden erst dinge verändert.

    Die Beschriftung der Buttons? Das glaube ich nicht. Das wäre ziemlich
    dummer Code.

    Warum??
    wenn ich zu einem bestimmten objekt z.b. einem Button einen ActionListener hinzufüge, dann ist doch logisch dass beim Ausführen von actionPerformed auch dieser Button geklickt wurde oder nicht??

    Kommt drauf an. Du kannst ja auch denselben ActionListener bei mehreren
    Buttons registrieren. Jeder dieser Buttons ruft dann die Methode des
    selben ActionListener-Objekts auf. Nur durch Abfrage des Button-Objekts
    oder des Commands kann man ermitteln, welcher Button tatsächlich die
    Methode aufgerufen hat.

    Gruß
    Slyh

  2. Ich lese gerade "Das Handbuch der Java-Programmierung" und da wird manchmal zuerst die Beschriftung des Buttons in actionPerformed abgefragt und dann werden erst dinge verändert.

    Der Action-Command ist neben der Beschriftung eine zweite Eigenschaft eines Buttons. Mit getActionCommand() bekommt man standardmäßig die Beschriftung, aber die Beschriftung kann man vom Action-Command trennen. Dazu ist nur setActionCommand() aufzurufen. Man bekommt dann die Möglichkeit, einen Listener auf eine größere Anzahl Buttons zu hängen und diese dann zu unterscheiden.

    Grüße

    Christian