Literatur

JButton

Eine Schaltfläche (Button) lässt sich mit der Klasse javax.swing.JButton realisieren. Dieses Bedienelement  befindet sich in nahezu jeder Anwendung, mit der Sie eine bestimmte Aktion durchführen können. Wie man durch Klicken eines Buttons eine Aktion auslöst, werden wir in einem späteren Kapitel behandeln. An dieser Stelle möchten wir nur darauf eingehen, wie man einen JButton anzeigt.

Neben dem Standardkonstruktor besitzt die Klasse JButton einige weitere Konstruktoren, die wir in folgender Tabelle kurz näher erläutern wollen:

Konstruktor Kurzbeschreibung
JButton(Action a) Hier wird einem JButton direkt eine Aktion zugewiesen, die beim Klicken der Schaltfläche ausgelöst werden soll. Auf die Klasse Action werden wir später eingehen.
JButton(Icon icon) Dieser Konstruktor erstellt einen JButton, der an Stelle eines Schriftzuges ein Icon anzeigt. Diese Verwendung findet man sehr häufig in Werkzeugleisten (JToolBar). Als typisches Beispiel wäre hier die Schaltfläche "Speichern" mit dem Disketten-Icon  zu nennen.
JButton(String text) Hier wird ein JButton mit einem Text als Beschriftung erzeugt.
JButton(String text, Icon icon) Mit Hilfe dieses Konstruktors bekommt das erzeugte JButton-Objekt direkt einen Text sowie ein Icon übergeben. Der Text erscheint hinter dem Icon.

 

Beispiel:

 
import javax.swing.*;
 
public class JButtonBeispiel
{
    public static void main(String[] args)
    {
        JFrame meinJFrame = new JFrame();
        meinJFrame.setTitle("JButton Beispiel");
        JPanel panel = new JPanel();
 
        // JButton mit Text "Drück mich" wird erstellt
        JButton button = new JButton("Drück mich");
 
        // JButton wird dem Panel hinzugefügt
        panel.add(button);
 
        meinJFrame.add(panel);
 
        // Fenstergröße wird so angepasst, dass 
        // der Inhalt reinpasst    
        meinJFrame.pack();
 
        meinJFrame.setVisible(true);
    }
}

Wir haben jetzt einen JButton mit dem dritten Konstruktor der obigen Tabelle erzeugt. Diesen fügen wir unserem JPanel hinzu.

Wenn Sie den obigen Quellcode kompilieren und ausführen, sollten Sie folgendes Bild sehen:

Ein Button macht in der Praxis natürlich nur Sinn, wenn dieser auch eine Funktion auslösen kann. Dazu muss dem Button ein ActionListener zugewiesen werden. Falls Listener und Events für Sie noch Fremdwörter sind, sollten Sie sich zunächst den allgemeinen Teil über Events und Listener durchlesen.

Nachfolgend stellen wir Ihnen noch einige Methoden der Klasse JButton vor:

Methode

Beschreibung

void addActionListener(ActionListener l)

Weist dem Button einen ActionListener zu. Dieser wird aufgerufen, wenn ein ActionEvent (hier: Auslösen der Schaltfläche) an dem betreffenden Button auftritt (siehe Kapitel ActionListener)

void addChangeListener(ChangeListener l)

Weist dem Button einen ChangeListener zu. Dieser wird aufgerufen, wenn sich der Zustand des Buttons ändert.

int getHorizontalAlignment()

Gibt die horizontale Ausrichtung von Text und Icon zurück.

int getHorizontalTextPosition()

Gibt die horizontale Textposition in Relation zum Icon zurück.

Icon getIcon()

Gibt das für den Button gesetzte Icon zurück.

int getMnemonic()   

Gibt das gesetzte Mnemonic (Tastenkürzel) zurück.

String getText( )

Liefert den gesetzten Text (Beschriftung des Buttons).

int getVerticalAlignment()  

Gibt die vertikale Ausrichtung von Text und Icon zurück.

int getVerticalTextPosition()

Gibt die vertikale Ausrichtung des Textes in Relation zum Icon zurück.

boolean isSelected( )

Gibt den Zustand (selektiert / nicht selektiert) des Buttons zurück.

void removeActionListener(ActionListener l)

Entfernt den angegebenen ActionListener.

void removeChangeListener(ChangeListener l)

Entfernt den angegebenen ChangeListener.

void setEnabled(boolean b)

Aktiviert (true) oder deaktiviert (false) den Button.

void setHorizontalAlignment(int alignment)

Setzt die horizontale Ausrichtung von Text und Icon. Die Integer-Werte für die Ausrichtung sind in den Konstanten LEFT, RIGHT, CENTER, LEADING und TRAILING hinterlegt, welche JButton von der Klasse javax.swing.SwingConstants erbt.

void setHorizontalTextposition(int textPosition)

Setzt die horizontale Ausrichtung des Textes in Relation zum Icon. 

void setIcon(Icon defaultIcon)

Setzt das standardmäßig angezeigte Icon.

void setMnemonic(int mnemonic)

Setzt das Tastenkürzel für den Button. Das jeweilige Zeichen wird unterstrichen dargestellt, wenn es im Button-Text enthalten ist. Die Integer-Werte für die einzelnen Tasten sind in den Konstanten der Klasse java.awt.event.KeyEvent hinterlegt (z.B. KeyEvent.VK_U für die Taste U). Wird die ALT-Taste in Verbindung mit dem eingestellten Kürzel gedrückt, so wird der Button betätigt.

void setSelected(boolean b)

Setzt den Zustand des Buttons (true für selektiert, false für nicht-selektiert).

void setText(String text)

Setzt den Text (Beschriftung) des Buttons.

void setVerticalAlignment(int alignment)

Setzt die vertikale Ausrichtung von Text und Icon.

void setVerticalTextPosition(int textPosition)

Setzt die vertikale Ausrichtung des Textes in Relation zum Icon.