Heim >Java >javaLernprogramm >Einführung in Tags, Schaltflächen und Schaltflächenereignisse auf Java-Basis
Beschriftungen und Schaltflächen sind möglicherweise die beiden häufigsten Komponenten in grafischen Oberflächen, und Schaltflächen stehen immer im Zusammenhang mit der Auslösung von Aktionsereignissen.
Label
Label (JLabel) ist die einfachste Swing-Komponente. Die Funktion des Label-Objekts besteht darin, die dahinter liegende Schnittstellenkomponente zu beschreiben. Sie können die Eigenschaften des Etiketts festlegen, also die Vordergrundfarbe, Hintergrundfarbe, Schriftart usw., aber Sie können den Text im Etikett nicht dynamisch bearbeiten.
Der grundlegende Inhalt von Tags im Programm umfasst die folgenden Aspekte:
1. Deklarieren Sie einen Tag-Namen;
3. Fügen Sie das Tag-Objekt zu einem hinzu bestimmten Behälter.
1.JLabel (): Konstruieren Sie ein Etikett ohne angezeigten Text.
2.JLabel (String s): Konstruieren Sie ein Etikett mit dem angezeigten Text text s ;
3.JLabel(String s, int align): Konstruieren Sie eine Beschriftung, deren Anzeigetext s ist. Ausrichtung ist die horizontale Art, Text anzuzeigen. Es gibt drei Ausrichtungsmethoden: •Linksausrichtung:
•Rechtsausrichtung : JLabel .RIGHT
1.setText(String s): Legen Sie den Beschriftungsanzeigetext fest;
2.getText(): Rufen Sie den Beschriftungsanzeigetext ab ;
3 .setBackground(Color c): Legt die Hintergrundfarbe des Etiketts fest. Die Standardhintergrundfarbe ist die Hintergrundfarbe des Containers.
4.setForeground(Color c): Legt die Farbe des Texts fest Die Standardfarbe ist Schwarz.
1.JButton(): Erstellen Sie ein Schaltflächenobjekt ohne Titel.
2.JButton(String s): Erstellen Sie ein Schaltflächenobjekt mit einem Titel.
1.setLabel(String s): Legt den Titeltext der Schaltfläche fest.
2.getLabel(): Ruft den Titeltext der Schaltfläche ab.
3.setMnemonic(char mnemonic): Legen Sie den Hotkey fest
4.setToolTipText(String s): Legen Sie den Eingabeaufforderungstext fest.
5.setEnabled(boolean b): Legen Sie fest, ob auf Ereignisse reagiert werden soll.
6.setRolloverEnabled(boolean b): Legen Sie fest, ob gescrollt werden kann.
7.addActionListener(ActionListener aL): Fügen Sie der Schaltfläche einen Aktionsmonitor hinzu.
8.removeActionListener(ActionListener aL): Bewegen Sie den Monitor der Schaltfläche.
2. Deklarieren Sie ein Schaltflächenobjekt.
5 Implementieren Sie die Überwachung für Ereignisse, die auf dieser Schaltfläche generiert werden. Wenn die Klasse, in der sich das Schaltflächenobjekt befindet, die Überwachungsschnittstelle implementiert, lautet die Codeform zum Registrieren des Monitors
. Siehe [Beispiel 11-3]. Der Monitor, Klasse A. Die ActionListener-Schnittstelle muss implementiert werden, um die Monitorregistrierung abzuschließen:
addActionListener(this);
6. Geben Sie in der Klasse, die die ActionListener-Schnittstelle implementiert, die Definition an der Methode zur Behandlung von Ereignissen:
A a = new A(); //创建类A的实例a addActionListener(a); //用对象a作为监视器对事件进行监视。
Verwenden Sie bei der Methode zur Verarbeitung von Ereignissen die Methode zum Abrufen der Ereignisquelleninformationen, um die Ereignisquelleninformationen zu erhalten, und beurteilen und vervollständigen Sie die entsprechende Verarbeitung. Die Methoden zum Abrufen der Ereignisquelle sind: Methode getSource() zum Abrufen des Ereignisquellenobjekts; Methode getActionCommand() zum Abrufen der Textinformationen der Ereignisquellenschaltfläche.
public void actionPerformed(ActionEvent e);
[Beispiel 11-3] Prozessschaltflächenereignisinstanz Die Anwendung definiert ein Fenster mit zwei im Fenster festgelegten Schaltflächen. Wenn auf die rote Schaltfläche geklickt wird, wird die Hintergrundfarbe des Fensters auf Rot gesetzt ; Klicken Sie auf Grün. Wenn die Schaltfläche gedrückt wird, wird die Hintergrundfarbe des Fensters auf Grün gesetzt.
Klicken Sie mit der Maus auf die Schaltfläche, um ein Ereignisobjekt zu generieren und das Ereignis an das Objekt zu senden. Dieser Vorgang wird als Auslösen eines Ereignisses bezeichnet. Wenn ein Ereignis an das Monitorobjekt gesendet wird, wird die vom Monitorobjekt implementierte Schnittstellenmethode aufgerufen, und das System stellt beim Aufruf die Parameter des Ereignisobjekts bereit. Obwohl es im Programm keinen Code zum Aufrufen der Monitor-Methode gibt, führt das Programm zwei Dinge aus: Geben Sie zunächst an, welches Objekt der Monitor ist, der auf durch die Schaltfläche ausgelöste Ereignisse reagiert. Dieser Schritt wird als Monitor-Registrierung bezeichnet. Zweitens müssen Sie eine Methode definieren, die aufgerufen wird, wenn ein Ereignis an den Monitor gesendet wird. Es gibt keinen Code zum Aufrufen dieser Methode im Programm, dieser Aufruf wird vom System ausgeführt.
import javax.swing.*;import java.awt.*;import java.awt.event.*; public class J503{ public static void main(String[]args){ ButtonDemo myButtonGUI=new ButtonDemo();//声明并创建按钮对象 myButtonGUI.setVisible(true); } } class ButtonDemo extends JFrame implements ActionListener{ public static final int Width=250; public static final int Height=200; ButtonDemo(){ setSize(Width,Height); setTitle("按钮事件样例"); Container conPane=getContentPane(); conPane.setBackground(Color.BLUE); conPane.setLayout(new FlowLayout());//采用FlowLayout布局 JButton redBut=new JButton("Red"); redBut.addActionListener(this);//给Red按钮注册监视器 conPane.add(redBut);//在窗口添加Red按钮 JButton greenBut=new JButton("Green"); greenBut.addActionListener(this);//给Green按钮注册监视器 conPane.add(greenBut);//在窗口添加Green按钮 } public void actionPerformed(ActionEvent e){//实现接口处理事件的方法 Container conPane=getContentPane(); if(e.getActionCommand().equals("Red"))//是Red按钮事件 conPane.setBackground(Color.RED); else if(e.getActionCommand().equals("Green"))//是Green按钮事件 conPane.setBackground(Color.GREEN); else{} } }Im obigen Programm registriert der Code
redBut.addActionListener(this);
dies als Monitor der redBut-Schaltfläche, und der nachfolgende Code registriert dies auch als Monitor der greenBut-Schaltfläche . Im obigen Programm ist dies das aktuelle ButtonDemo-Objekt myButtonGUI. Auf diese Weise ist die Klasse ButtonDemo die Klasse des Monitorobjekts und das Objekt MyButtonGUI dient als Monitor der beiden Schaltflächen. Es gibt eine Implementierung der Monitor-Methode in der Klasse ButtonDemo. Beim Klicken auf eine Schaltfläche ruft das System automatisch die Methode actionPerformed() mit dem Ereignisinitiator als Parameter auf.
Verschiedene Komponenten haben unterschiedliche Arten von ausgelösten Ereignissen und unterschiedliche Arten von Überwachungsklassen. Das durch die Schaltfläche ausgelöste Ereignis wird als Aktionsereignis bezeichnet, und der entsprechende Monitor wird als Aktionsmonitor bezeichnet. Der Typ eines Aktionsmonitorobjekts ist ActionListener, und die Klasse muss die ActionListener-Schnittstelle implementieren. Das Programm muss zwei Dinge tun, um diese Inhalte wiederzugeben:
1. Verbinden Sie den Code mit der ersten Zeile der Klassendefinition.
2. Definieren Sie die Methode actionPerformed (). Klasse.
Die Klasse ButtonDemo im vorherigen Programm macht diese beiden Dinge korrekt.
Wenn jedes Schnittstellenelement ein Ereignis auslöst, gibt es eine Zeichenfolge, die dem Ereignis entspricht. Diese Zeichenfolge wird als Aktionsbefehl bezeichnet. Verwenden Sie den Code e.getActionCommand(), um die Befehlszeichenfolge des Aktionsereignisparameters e abzurufen. Auf dieser Grundlage kann die Methode actionPerformed() erkennen, welche Schaltfläche das Ereignis ausgelöst hat. Standardmäßig ist die Befehlszeichenfolge der Schaltfläche der Text auf der Schaltfläche. Bei Bedarf können Sie mit der Methode setActionCommand() den Befehlsstring für die Schnittstellenkomponente festlegen.
Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, er gefällt euch allen.
Weitere Artikel zur Einführung von Tags, Schaltflächen und Schaltflächenereignissen auf Java-Basis finden Sie auf der chinesischen PHP-Website!