Π ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ ActionListener ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅ΡΠΎΠ΄: actionPerformed (). ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΎΠ±ΡΠ°Ρ ΡΠΎΡΠΌΠ° ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°.void actionPerformed(ActionEvent ae)
ΠΠ°Π½Π½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΏΡΠΈ ΡΠ΅Π»ΡΠΊΠ΅ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π² ΡΡΠΎΠΌ ΠΌΠ΅ΡΠΎΠ΄Π΅ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΎΠ±ΡΡΠΈΠΉ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°Π΄ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ. Π Π΅Π°Π»ΠΈΠ·ΡΡ ΠΌΠ΅ΡΠΎΠ΄ actionPerf ormed (), Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ·Π°Π±ΠΎΡΠΈΡΡΡΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΎΠ½ Π±ΡΡΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ» ΡΠ²ΠΎΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π» ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. ΠΠ°ΠΊ ΠΏΠΎΡΡΠ½ΡΠ»ΠΎΡΡ ΡΠ°Π½Π΅Π΅, ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠ΅Π»ΠΎΠΌ. ΠΡΠ»ΠΈ ΠΆΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΎΠ±ΡΡΠΈΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΡΠ΅Π±ΡΡΡΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΈΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ ΠΏΠΎΡΠΎΠΊΠ΅, ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠΌ Π΄Π»Ρ ΡΡΠΎΠΉ ΡΠ΅Π»ΠΈ.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΈΠΏΠ° ActionEvent, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Ρ actionPerf ormed (), ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²Π°ΠΆΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠΎΠ±ΡΡΠΈΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΌ Ρ ΡΠ΅Π»ΡΠΊΠΎΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅. Π ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ Π΄Π»Ρ ΡΡΠΎΠΉ ΡΠ΅Π»ΠΈ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½Π°Ρ ΡΡΡΠΎΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΠ²ΡΠ·Π°Π½Π½Π°Ρ Ρ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½Π°Ρ ΡΡΡΠΎΠΊΠ° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π²Π½ΡΡΡΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ. ΠΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ, Π²ΡΠ·Π²Π°Π² ΠΌΠ΅ΡΠΎΠ΄ getActionCommand () Π΄Π»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΎΠ±ΡΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:String getActionCommand()
ΠΠΎΠΌΠ°Π½Π΄Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΠ΅Ρ ΠΊΠ½ΠΎΠΏΠΊΡ. ΠΠΎΠ³Π΄Π° Π² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠΌΠ΅Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ½ΠΎΠΏΠΎΠΊ, ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΠΊΠ°ΠΊΠ°Ρ ΠΈΠ· Π½ΠΈΡ Π±ΡΠ»Π° Π²ΡΠ±ΡΠ°Π½Π°.
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ, ΡΠ΅Π°Π³ΠΈΡΡΡΡΠ΅ΠΉ Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. Π Π½Π° ΡΠΈΡ. 15.2 ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΠΎΠΊΠ½ΠΎ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΠΎΠ΅ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ Π½Π° ΡΠΊΡΠ°Π½Π΅.// ΠΠ΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ.import java.awt.*;import java.awt.event.*;import javax.swing.*;class ButtonDemo implements ActionListener { JLabel jlab; ButtonDemo() { // ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ JFrame JFrame jfrm = new JFrame("A Button Example"); // ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ FlowLayout jfrm.setLayout(new FlowLayout()); // Π·Π°Π΄Π°ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠ°ΠΌΠΊΠΈ ΠΎΠΊΠ½Π° < jfrm.setSize(220, 90); // Π·Π°Π²Π΅ΡΡΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΊΡΡΡΠΈΡ ΠΎΠΊΠ½Π° jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄Π²ΡΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ. JButton jbtnUp = new JButton("Up"); JButton jbtnDown = new JButton("Down"); // ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΎΠ² ΡΠΎΠ±ΡΡΠΈΠΉ ΠΎΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ. jbtnUp.addActionListener(this); jbtnDown.addActionListener(this) ; // ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΎΠΊ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ. jfrm.add(jbtnUp); jfrm.add(jbtnDown); // ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ΅ΡΠΊΡ jlab = new JLabel("Press a button."); // Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΌΠ΅ΡΠΊΡ Π² ΡΠ°ΠΌΠΊΠ΅ ΠΎΠΊΠ½Π° jfrm.add(jlab); // ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΡΠ°ΠΌΠΊΡ ΠΎΠΊΠ½Π° jfrm.setVisible(true); } // ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΎΠ±ΡΡΠΈΠΉ ΠΎΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ. public void actionPerformed(ActionEvent ae) { // ΠΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π°ΠΆΠ°ΡΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. if(ae.getActionCommand().equals("Up")) jlab.setText("You pressed Up."); else jlab.setText("You pressed down. "); } public static void main(String args[]) { // ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΌΠΊΡ ΠΎΠΊΠ½Π° Π² ΠΏΠΎΡΠΎΠΊΠ΅ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ SwingUtilities.invokeLater(new Runnable() { public 'void run() { new ButtonDemoO; } }) ; }}

Π ΠΈΡ. 15.2. ΠΠΊΠ½ΠΎ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΠΎΠ΅ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ButtonDemo
ΠΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΎΠ±ΡΠ°ΡΠΈΠ² Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π½ΠΎΠ²ΡΠ΅ ΠΈ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π²ΡΠΈΠ΅ΡΡ Π΄ΠΎ ΡΠΈΡ ΠΏΠΎΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ. Π‘Π½Π°ΡΠ°Π»Π° Π² ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΡΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ j ava. awt ΠΈ j ava. awt. event. ΠΠ°ΠΊΠ΅Ρ j ava. awt Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠ»Π°ΡΡ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ FlowLayout, Π° ΠΏΠ°ΠΊΠ΅Ρ j ava. awt. event β ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ Π² Π½Π΅ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ActionListener ΠΈ ΠΊΠ»Π°ΡΡ ActionEvent.
ΠΠ°Π»Π΅Π΅ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ»Π°ΡΡ ButtonDemo, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ActionListener. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠΈΠΏΠ° ButtonDemo ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ Π΄Π»Ρ ΠΏΡΠΈΠ΅ΠΌΠ° ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΠ°ΡΠ΅ΠΌ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΈΠΏΠ° JLabel. ΠΠ½Π° Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π° Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ actionPerf ormed () Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊΠ°Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ° Π±ΡΠ»Π° Π½Π°ΠΆΠ°ΡΠ°.
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΊΠ»Π°ΡΡΠ° ButtonDemo Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° jfrm ΡΠΈΠΏΠ° JFrame. ΠΠ°ΡΠ΅ΠΌ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ Π΄Π»Ρ ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° jfrm ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ FlowLayout, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅,j frm.setLayout(new FlowLayout());
ΠΠ°ΠΊ ΠΏΠΎΡΡΠ½ΡΠ»ΠΎΡΡ ΡΠ°Π½Π΅Π΅, ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ BorderLayout, Π½ΠΎ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π»ΡΡΡΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ FlowLayout. ΠΠ½ ΡΠ°Π·ΠΌΠ΅ΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΏΠΎΡΡΡΠΎΡΠ½ΠΎ: ΡΠ»Π΅Π²Π° Π½Π°ΠΏΡΠ°Π²ΠΎ ΠΈ ΡΠ²Π΅ΡΡ Ρ Π²Π½ΠΈΠ·. ΠΠΎΡΠ»Π΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠΈ ΡΡΠΎΡ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠ΅. Π’Π°ΠΊΠ°Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π»ΠΈΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π½Π°Π΄ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², Ρ ΠΎΡΡ ΠΈ ΠΏΡΠΎΡΡΠ° Π² ΡΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠΈ. ΠΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡΡ.
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΡΠ°ΠΌΠΊΠΈ ΠΎΠΊΠ½Π° ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, Π·Π°Π²Π΅ΡΡΠ°ΡΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅ ButtonDemo () ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π΄Π²Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ:JButton jbtnUp = new JButton("Up");JButton jbtnDown = new JButton("Down");
ΠΠ° ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π½Π°Π΄ΠΏΠΈΡΡ Up (ΠΠ°ΠΆΠ°ΡΠΎ), Π° Π½Π° Π²ΡΠΎΡΠΎΠΉ β Down (ΠΡΠΏΡΡΠ΅Π½ΠΎ).
ΠΠ°Π»Π΅Π΅ Ρ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ ΡΠ²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, Π² ΡΠΎΠ»ΠΈ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²ΡΡΡΡΠΏΠ°Π΅Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° ButtonDemo, Π° ΡΡΡΠ»ΠΊΠ° Π½Π° Π½Π΅Π³ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° this. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΊΠΎΠ΄Π° ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π½ΠΈΠΆΠ΅.jbtnUp.addActionListener(this) ;jbtnDown.addActionListener(this) ;
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΈΡ ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠΎΠ·Π΄Π°ΡΡΠΈΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ, Π±ΡΠ΄Π΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎΠ± ΠΈΡ Π½Π°ΠΆΠ°ΡΠΈΠΈ.
ΠΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° ΠΊΠ½ΠΎΠΏΠΊΠ° Π½Π°ΠΆΠΈΠΌΠ°Π΅ΡΡΡ, ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ ΡΠΎΠ±ΡΡΠΈΠ΅, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»ΡΡΡΡΡ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΠ·ΠΎΠ²Π° ΠΌΠ΅ΡΠΎΠ΄Π° actionPerformed(). ΠΠ±ΡΠ΅ΠΊΡ ΡΠΈΠΏΠ° ActionEvent, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΡΠΎΠ±ΡΡΠΈΠ΅ ΠΎΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ, ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ ΡΡΠΎΠΌΡ ΠΌΠ΅ΡΠΎΠ΄Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°. Π ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ButtonDemo ΡΡΠΎ ΡΠΎΠ±ΡΡΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠ΅ΡΠΎΠ΄Π° actionPerformed():// ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΎΠ±ΡΡΠΈΠΉ ΠΎΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ.public void actionPerformed(ActionEvent ae) { if(ae.getActionCommand().equals("Up")) jlab.setText("You pressed Up."); else jlab.setText("You pressed down. ");}
ΠΠ»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΡΠΎΠ±ΡΡΠΈΡ ΡΠ»ΡΠΆΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π°Π΅. Π ΡΠ΅Π»Π΅ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΊΠ½ΠΎΠΏΠΊΠ΅, ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π²ΡΠ΅ΠΉ ΡΠΎΠ±ΡΡΠΈΠ΅. ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ getActionCommand (). (ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΠΌ: ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅.) Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΊΡΡ Π½Π°Π΄ΠΏΠΈΡΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΉ Π½Π° ΡΠΎ, ΠΊΠ°ΠΊΠ°Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ° Π±ΡΠ»Π° Π½Π°ΠΆΠ°ΡΠ°.
Π‘Π»Π΅Π΄ΡΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅ΡΡ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ ΠΌΠ΅ΡΠΎΠ΄ actionPerformed () Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Π² ΠΏΠΎΡΠΎΠΊΠ΅ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ. ΠΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°Π²Π΅ΡΡΠ°ΡΡΡΡ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠ΅Π΅, ΡΡΠΎΠ±Ρ Π½Π΅ Π·Π°ΠΌΠ΅Π΄Π»ΡΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.Π Π°Π±ΠΎΡΠ° Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠΌ JTextField
Π ΡΠΈΡΠ»Ρ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Swing ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ JTextField, ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²Π²ΠΎΠ΄ΠΈΡΡ ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΡΡΡΠΎΠΊΡ. ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ JTextField ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡΠΎΠΌ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΡΠΌ ΠΎΡ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° JTextComponent, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΡΡΡΠΏΠ°Π΅Ρ Π² ΡΠΎΠ»ΠΈ ΡΡΠΏΠ΅ΡΠΊΠ»Π°ΡΡΠ° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° JTextField, Π½ΠΎ ΠΈ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π²ΠΎΠΎΠ±ΡΠ΅. Π ΠΊΠ»Π°ΡΡΠ΅ JTextField ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΡΡΠ΄ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠ². ΠΠ΄Π΅ΡΡ ΠΈ Π΄Π°Π»Π΅Π΅ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ:JTextField(int cols)
Π³Π΄Π΅ cols ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΠΈΡΠΈΠ½Ρ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ, Π²ΡΡΠ°ΠΆΠ΅Π½Π½ΡΡ Π² ΡΡΠΎΠ»Π±ΡΠ°Ρ . ΠΠ΄Π½Π°ΠΊΠΎ Π΄Π»ΠΈΠ½Π° Π²Π²ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠΈΡΠΈΠ½ΠΎΠΉ ΠΏΠΎΠ»Ρ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ Π½Π° ΡΠΊΡΠ°Π½Π΅. ΠΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ Π² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ cols, ΠΎΠ½ Π·Π°Π΄Π°Π΅Ρ Π»ΠΈΡΡ ΡΠΏΠΎΠΌΡΠ½ΡΡΡΠΉ Π²ΡΡΠ΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°.
ΠΠ»Ρ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π²Π²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ° Π² ΠΏΠΎΠ»Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ ΠΊΠ»Π°Π²ΠΈΡΡ , Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΠ΅Π³ΠΎ ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ ΡΠΎΠ±ΡΡΠΈΠ΅ ActionEvent. Π ΠΊΠ»Π°ΡΡΠ΅ JTextField ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ addActionListener () ΠΈ removeActionListener (). ΠΠ»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ actionPerformed (), ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π½ΡΠΉ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ ActionListener. ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΎΠ±ΡΡΠΈΠΉ ΠΎΡ ΠΏΠΎΠ»Ρ Π²Π²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ° ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΎΠ±ΡΡΠΈΠΉ ΠΎΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ, ΠΎ ΠΊΠΎΡΠΎΡΡΡ ΡΠ»Π° ΡΠ΅ΡΡ ΡΠ°Π½Π΅Π΅.