ΠΠ½Π΄Π΅ΠΊΡ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°, Π° Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ SINGLE SELECTION β ΡΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ, Π²ΡΠ·Π²Π°Π² ΠΌΠ΅ΡΠΎΠ΄ getSelectedlndex (). ΠΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΠ½ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΡΡΡ,int getSelectedlndex()
ΠΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ Π½ΡΠ»Ρ. Π’Π°ΠΊ, Π΅ΡΠ»ΠΈ Π²ΡΠ±ΡΠ°Π½ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π² ΡΠΏΠΈΡΠΊΠ΅, ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 0. ΠΡΠ»ΠΈ ΠΆΠ΅ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π½Π΅ Π²ΡΠ±ΡΠ°Π½, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ -1.
ΠΠΎΠ»ΡΡΠΈΡΡ ΠΌΠ°ΡΡΠΈΠ², ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ Π²ΡΠ΅ Π²ΡΠ±ΡΠ°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ, Π²ΡΠ·Π²Π°Π² ΠΌΠ΅ΡΠΎΠ΄ getSelectedlndices():int[] getSelectedlndices()
Π Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ ΠΏΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ°ΡΡΠ΅ΠΉ. ΠΡΠ»ΠΈ ΠΆΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ ΠΌΠ°ΡΡΠΈΠ² Π½ΡΠ»Π΅Π²ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π½Π΅ Π²ΡΠ±ΡΠ°Π½ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°.
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° JList, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠΌΠ΅Π½. ΠΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΠΈΠΌΡ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°, ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ ΡΠΎΠ±ΡΡΠΈΠ΅ ListSelectionEvent, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ valueChanged (), ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π½ΡΠΌ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ ListSelectionListener. ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ ΠΈΠΌΡ. ΠΠΊΠ½ΠΎ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΠΎΠ΅ Π½Π° ΡΠΊΡΠ°Π½Π΅ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΎ Π½Π° ΡΠΈΡ. 15.5.// ΠΠ΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° JList.// ΠΠ»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ JDK 7// ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ°.import javax.swing.*;import javax.swing.event.*;import j ava.awt.*;import java.awt.event.*;class ListDemo implements ListSelectionListener { JList<String> jlst; JLabel jlab; JScrollPane jscrip; // ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠΌΠ΅Π½ String names[] = { "Sherry", "Jon", "Rachel", // ΠΡΠΎΡ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠΌΠ΅Π½ "Sasha", "Josselyn", "Randy", // Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ "Tom", "Mary", "Ken", // ΡΠΏΠΈΡΠΊΠΎΠΌ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ JList. "Andrew", "Matt", "Todd" }; ListDemo() { // ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ JFrame JFrame jfrm = new JFrame("JList Demo"); // ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ FlowLayout jfrm.setLayout(new FlowLayout()); // Π·Π°Π΄Π°ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠ°ΠΌΠΊΠΈ ΠΎΠΊΠ½Π° jfrm.setSize(200, 160); // Π·Π°Π²Π΅ΡΡΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΊΡΡΡΠΈΡ ΠΎΠΊΠ½Π° jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ JList jlst = new JList<String>(names); // Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΏΠΈΡΠΊΠ° ΠΈΠΌΠ΅Π½. // Π·Π°Π΄Π°ΡΡ ΡΠ΅ΠΆΠΈΠΌ Π²ΡΠ±ΠΎΡΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° // ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π² ΡΠ΅ΠΆΠΈΠΌ Π²ΡΠ±ΠΎΡΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ. j1st.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); // Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ. // ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΠΏΠΈΡΠΊΠ° ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ. jscrlp = new JScrollPane(jlst); // Π·Π°Π΄Π°ΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ jscrlp.setPreferredSize(new Dimension(120, 90)); // ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ΅ΡΠΊΡ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² Π²ΡΠ±ΠΎΡΠ° ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°, jlab = new JLabel("Please choose a name"); // Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ Π²ΡΠ±ΠΎΡΠΎΠΌ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° // ΠΡΠΈΠ΅ΠΌ ΡΠΎΠ±ΡΡΠΈΠΉ, Π½Π°ΡΡΡΠΏΠ°ΡΡΠΈΡ ΠΏΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°. jlst.addListSelectionListener(this); // Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ ΠΈ ΠΌΠ΅ΡΠΊΡ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ jfrm.add(jscrlp); jfrm.add(jlab); // ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΡΠ°ΠΌΠΊΡ ΠΎΠΊΠ½Π° jfrm.setVisible(true); } // ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠΈΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π²ΡΠ±ΠΎΡΠΎΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° public void valueChanged(ListSelectionEvent le) { // ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, Π²ΡΠ±ΠΎΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ» ΡΠ΄Π΅Π»Π°Π½ // ΠΈΠ»ΠΈ ΠΎΡΠΌΠ΅Π½Π΅Π½ Π² ΡΠΏΠΈΡΠΊΠ΅ int idx = j1st.getSelectedlndex(); // ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠ±ΠΎΡΠ°, Π΅ΡΠ»ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π±ΡΠ» Π²ΡΠ±ΡΠ°Π½ if(idx != -1) jlab.setText("Current selection: " + names[idx]); else // ΠΈΠ½Π°ΡΠ΅ Π΅ΡΠ΅ ΡΠ°Π· ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ±ΠΎΡ jlab.setText("Please choose a name"); } public static void main(String args[]) { // ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΌΠΊΡ ΠΎΠΊΠ½Π° Π² ΠΏΠΎΡΠΎΠΊΠ΅ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ SwingUtilities.invokeLater(new Runnable() { public void run() { new ListDemoO; } }) ; }}

Π ΠΈΡ. 15.5. ΠΠΊΠ½ΠΎ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΠΎΠ΅ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ListDemo
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠΎ, ΡΡΠΎ Π² Π½Π°ΡΠ°Π»Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ°ΡΡΠΈΠ² names. ΠΠ½ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΌΠΈ ΡΠ°Π·Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π°. Π ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅ ListDemo () ΠΌΠ°ΡΡΠΈΠ² names ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° JList. ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ, ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ ΠΌΠ°ΡΡΠΈΠ², ΠΊΠ°ΠΊ ΡΡΠΎ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ΅ΡΡΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° JList, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π°. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΠΎΡΠΌΠΈΡΡΠ΅ΠΌΡΠΉ ΡΠΏΠΈΡΠΎΠΊ Π±ΡΠ΄Π΅Ρ ΡΠΎΡΡΠΎΡΡΡ ΠΈΠ· ΠΈΠΌΠ΅Π½, Ρ ΡΠ°Π½ΡΡΠΈΡ ΡΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ names.
ΠΠ°Π»Π΅Π΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΆΠΈΠΌ, Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡΠΈΠΉ Π²ΡΠ±ΠΎΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°. ΠΠ°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ jlst ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ JScrollPane, Π° Π΄Π»Ρ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ Π·Π°Π΄Π°ΡΡΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ 120 * 90. ΠΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ ΡΠ°Π΄ΠΈ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΠΎΡΡΠΈ ΠΈ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°. ΠΠ»Ρ Π·Π°Π΄Π°Π½ΠΈΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΡΠ»ΡΠΆΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ setPreferredSize (). ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°, Π½ΠΎ Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π·Π°Π±ΡΠ²Π°ΡΡ, ΡΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ Π½Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ².
ΠΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ²ΠΎΠΉ Π²ΡΠ±ΠΎΡ, ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ΅ Ρ ΡΡΠΈΠΌ ΡΠΎΠ±ΡΡΠΈΠ΅. ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π² ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ, Π° Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π² Π΅Π³ΠΎ ΡΠΎΠ»ΠΈ Π²ΡΡΡΡΠΏΠ°Π΅Ρ ΠΌΠ΅ΡΠΎΠ΄ valueChanged (), Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ getSelectedlndex (). Π ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π΄Π»Ρ ΡΠΏΠΈΡΠΊΠ° Π±ΡΠ» Π·Π°Π΄Π°Π½ ΡΠ΅ΠΆΠΈΠΌ, ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°ΡΡΠΈΠΉ Π²ΡΠ±ΠΎΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΈΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ, ΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΡΠΎΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ. ΠΠ°ΡΠ΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΠΌΠ°ΡΡΠΈΠ²Ρ names ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠΎ, ΡΡΠΎ Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ, ΡΠ°Π²Π΅Π½ Π»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ -1. ΠΠ°ΠΊ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ Π²ΡΡΠ΅, ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ, ΡΡΠΎ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π½Π΅ Π²ΡΠ±ΡΠ°Π½ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°. ΠΠ΅ΡΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΡΠΈ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΡΠΎΠ±ΡΡΠΈΠ΅ Π±ΡΠ»ΠΎ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΎ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΎΡΠΌΠ΅Π½Ρ Π»Π΅ΠΌ ΡΠ²ΠΎΠ΅Π³ΠΎ Π²ΡΠ±ΠΎΡΠ°. ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΡΠΎ ΡΠΎΠ±ΡΡΠΈΠ΅, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ΅ Ρ Π²ΡΠ±ΠΎΡΠΎΠΌ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°, ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΠΈΡΠΊΠ° ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΎΡΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ²ΠΎΠΉ Π²ΡΠ±ΠΎΡ.
ΠΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ ΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π½ΠΈΡ 15.1.Π£ΡΠΈΠ»ΠΈΡΠ° ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠ°Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Swing
ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ ΡΡΠΎ Π²Ρ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠ»ΠΈΡΡ Π»ΠΈΡΡ Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠ°ΡΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Swing, ΡΡΠΎ Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅Ρ Π²Π°ΠΌ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΡΠ²ΠΎΠΈ Π·Π½Π°Π½ΠΈΡ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ ΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π΄Π»Ρ ΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π½ΠΈΡ 10.1 Π±ΡΠ»Π° ΡΠΎΠ·Π΄Π°Π½Π° ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ° ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ². Π Π² ΡΡΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠΎΠΈΡ ΡΠ½Π°Π±Π΄ΠΈΡΡ Π΅Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ, ΠΏΠΎΡΡΡΠΎΠ΅Π½Π½ΡΠΌ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Swing. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ»ΡΡΡΠΈΡΡ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠΈΠ»ΠΈΡΡ ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ Π΅Π΅ Π±ΠΎΠ»Π΅Π΅ ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ Π² ΡΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠΈ. ΠΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅Π΅ ΠΎΠΊΠ½ΠΎ ΡΡΠΈΠ»ΠΈΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Swing.

Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ Π΄Π°Π½Π½ΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΠΌΠΈ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Swing ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ.
ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ» SwingFC.java ΠΈ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠ΅ Π½ΠΈΠΆΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ import. /* ΠΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ ΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π½ΠΈΡ 15-1. Π£ΡΠΈΠ»ΠΈΡΠ° ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠ°Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Swing. ΠΠ»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΡΠΎΠΉ ΡΡΠΈΠ»ΠΈΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ JDK 7 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ°. */ import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*;
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΊΠ»Π°ΡΡ SwingFC, Π½Π°ΡΠ°Π² Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π½ΠΈΠΆΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.class SwingFC implements ActionListener {JTextField jtfFirst; // ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°JTextField jtfSecond; // ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ Π²ΡΠΎΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°JButton jbtnComp; // ΠΠ½ΠΎΠΏΠΊΠ° Π΄Π»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²JLabel jlabFirst, jlabSecond; // ΠΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡJLabel jlabResult; // Π‘Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°Ρ ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ
ΠΠΌΠ΅Π½Π° ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ Π² ΠΏΠΎΠ»ΡΡ Π²Π²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ° jtfFirst ΠΈ jtfSecond. ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Π½Π°ΡΠ°ΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π² ΡΡΠΈΡ ΠΏΠΎΠ»ΡΡ , ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ΅Π»ΠΊΠ½ΡΡΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅ jbtnComp. ΠΠΎ Ρ ΠΎΠ΄Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠΊ j labFirst-ΠΈ j labSecond Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π½Π°Π²ΠΎΠ΄ΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΊΠΈ jlabResult.