Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Java: руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… (Π›ΠŸ)Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 130

Автор Π¨ΠΈΠ»Π΄Ρ‚ Π“Π΅Ρ€Π±Π΅Ρ€Ρ‚

Π’ΠΈΠ΄ΠΎΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π°ΠΏΠΏΠ»Π΅Ρ‚, созданный Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ для опробования 14.1, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ,Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² Π½Π΅ΠΌ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π»Π°ΡΡŒ символьная строка, пСрСдаваСмая Π΅ΠΌΡƒ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°. Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ врСмя Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ (Π² миллисСкундах)ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ сдвигами символов строки./ ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Π°ΠΏΠΏΠ»Π΅Ρ‚, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΠΉ ΠΊΡ€ΡƒΠΏΠ½Ρ‹ΠΉΠ·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ с использованиСм ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²./import java.awt.;import java.applet.;//public class ParamBanner extends Applet implements Runnable {String msg;int delay;Thread t;boolean stopFlag;// ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ t пустым Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ nullpublic void init() {String temp;592 Java /.'руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…, 5-Π΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅msg = getParameter("message");if(msg == null) msg = " Java Rules the Web ";temp = getParameter("delay");try {if(temp != null)delay = Integer.parselnt(temp);elsedelay =250; // Если ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π½Π΅ Π·Π°Π΄Π°Π½,// ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.} catch(NumberFormatException exc) {delay = 250 ; // Если Π΄ΠΎΠΏΡƒΡ‰Π΅Π½Π° ошибка, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ// Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.}t = null;}// Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΠΎΡ‚ΠΎΠΊpublic void start() {t = new Thread(this);stopFlag = false;t. start();}// Π’ΠΎΡ‡ΠΊΠ° Π²Ρ…ΠΎΠ΄Π° Π² ΠΏΠΎΡ‚ΠΎΠΊ, ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΡ€ΡƒΠΏΠ½Ρ‹ΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ,public void run() {char ch;// ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΊΡ€ΡƒΠΏΠ½Ρ‹ΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ сноваfor( ; ; ) {try {repaint();Thread.sleep(delay); *ch = msg.charAt(0);msg = msg.substring(1, msg.length());msg += ch;if (stopFlag)break;} catch(InterruptedException exc) {}}}// ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΡ€ΡƒΠΏΠ½ΠΎΠ³ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°public void stop() {stopFlag = true;t = null;}// ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΊΡ€ΡƒΠΏΠ½Ρ‹ΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊpublic void paint(Graphics g) {g.drawString(msg, 50, 30);ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ А. ΠžΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° вопросы для самопровСрки 593.}}

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π°ΠΏΠΏΠ»Π΅Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π» Π±Ρ‹ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ врСмя, обновляя содСрТимоС своСго ΠΎΠΊΠ½Π° ΠΊΠ°ΠΆΠ΄ΡƒΡŽ сСкунду. Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ с этим Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ, Π²Π°ΠΌ придСтся провСсти Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ изыскания. Для Π½Π°Ρ‡Π°Π»Π° ΠΏΡ€ΠΈΠΌΠΈΡ‚Π΅ ΠΊ свСдСнию ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ подсказку: ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ врСмя ΠΌΠΎΠΆΠ½ΠΎ,воспользовавшись ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ класса Calendar, относящСгося ΠΊ ΠΏΠ°ΠΊΠ΅Ρ‚Ρƒ java.util.(Напомним, Ρ‡Ρ‚ΠΎ компания Oracle прСдоставляСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΡƒΡŽ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ Π½Π° всС стандартныС классы Java.) ΠŸΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½Π½Ρ‹Ρ… Π²Π°ΠΌΠΈ Π΄ΠΎ сих ΠΏΠΎΡ€ Π·Π½Π°Π½ΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ достаточно для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ класс Calendar ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для выполнСния этого задания.// ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Π°ΠΏΠΏΠ»Π΅Ρ‚, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΠΉ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ врСмя.import java.util.;import java.awt.;import java.applet.;/

ΠŸΠΎΡΡΠ½ΠΈΡ‚Π΅ Π²ΠΊΡ€Π°Ρ‚Ρ†Π΅, ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ дСйствуСт модСль дСлСгирования событий Π² Java.Π’ ΠΌΠΎΠ΄Π΅Π»ΠΈ дСлСгирования событий источник Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ событиС ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ»ΠΈ нСскольким ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ°ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ лишь ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‚ наступлСния события.ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ² ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅, ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ событиС, Π° Π·Π°Ρ‚Π΅ΠΌ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅.

Π”ΠΎΠ»ΠΆΠ΅Π½ Π»ΠΈ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ событий Π±Ρ‹Ρ‚ΡŒ зарСгистрирован Π² ΠΈΡ… источникС?Π”ΠΎΠ»ΠΆΠ΅Π½. Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ ΠΏΠΎΠ»ΡƒΡ‡Π°Π» увСдомлСния ΠΎ событиях, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½Π±Ρ‹Ρ‚ΡŒ зарСгистрирован Π² источникС.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅. Π‘Ρ€Π΅Π΄ΠΈ языковых срСдств Java для отобраТСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ имССтся ΠΌΠ΅Ρ‚ΠΎΠ΄ drawLine (). Он рисуСт Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ ΠΏΡ€ΡΠΌΡƒΡŽ Π»ΠΈΠ½ΠΈΡŽΠΌΠ΅ΠΆΠ΄Ρƒ двумя Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ относится классу Graphics. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ‚ΠΎΠ΄drawLine (), Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π°ΠΏΠΏΠ»Π΅Ρ‚, ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΌΡ‹ΡˆΠΈ. Если ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΡ‹ΡˆΠΈ Π½Π°ΠΆΠ°Ρ‚Π°, Π°ΠΏΠΏΠ»Π΅Ρ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π½Π° экранС Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΡƒΡŽ линию Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€,ΠΏΠΎΠΊΠ° ΠΊΠ½ΠΎΠΏΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΏΡƒΡ‰Π΅Π½Π°./ ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ пСрСмСщСния ΠΌΡ‹ΡˆΠΈ ΠΏΡƒΡ‚Π΅ΠΌ рисования Π»ΠΈΠ½ΠΈΠΈ.ΠŸΡ€ΠΈΠ·Π½Π°ΠΊΠ°ΠΌΠΈ Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° Π»ΠΈΠ½ΠΈΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΈ отпусканиС ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΌΡ‹ΡˆΠΈ. /import java.awt.;import java.awt.event.;import java.applet.;//public class TrackM extends Appletimplements MouseListener, MouseMotionListener {ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ А. ΠžΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° вопросы для самопровСрки 595int curX = 0, curY =0; // Π’Π΅ΠΊΡƒΡ‰ΠΈΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹int oldX = 0, oldY =0; // ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹boolean draw;public void init () {addMouseListener(this);addMouseMotionListener(this);draw = false;}/ Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚Ρ€ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ, Π½ΠΎ ΠΈΡ… пустыС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈΠ½ΡƒΠΆΠ½Ρ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ эти ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ Π² интСрфСйсС MouseListener. */// ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠ΅ курсора ΠΌΡ‹ΡˆΠΈ Π½Π° элСмСнт// ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйсаpublic void mouseEntered(MouseEvent me) {}// ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΡ‹ΡˆΠΈ ΠΎΡ‚ элСмСнта// ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйсаpublic void mouseExited(MouseEvent me) {}// ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ‰Π΅Π»Ρ‡ΠΎΠΊ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈpublic void mouseClicked(MouseEvent me) {}// ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΌΡ‹ΡˆΠΈpublic void mousePressed(MouseEvent me) {// ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹oldX = me.getx();oldY = me.getY();, draw = true;}// ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ отпусканиС ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΌΡ‹ΡˆΠΈpublic void mouseReleased(MouseEvent me) {draw = false;}// ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ пСрСтаскиваниС ΠΌΡ‹ΡˆΠΈpublic void mouseDragged(MouseEvent me) {// ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹curX = me.getx();curY = me.getY();repaint();}// ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΌΡ‹ΡˆΠΈpublic void mouseMoved(MouseEvent me) {// ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ состояниСshowStatus ("Moving mouse at " + me.getXO + ", " + me.getYO);}596 Java 71 руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…, 5-Π΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅// ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ линию Π² ΠΎΠΊΠ½Π΅ Π°ΠΏΠΏΠ»Π΅Ρ‚Π°public void paint(Graphics g) {if(draw)g.drawLine(oldX, oldY, curX, curY);}}

ΠžΠ±ΡŠΡΡΠ½ΠΈΡ‚Π΅ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова assert.ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово assert создаСт ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅, Ρ‚.Π΅. условиС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ истинным ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Если ΠΆΠ΅ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π»ΠΎΠΆΠ½ΠΎ, гСнСрируСтся ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ AssertionError.

ΠŸΡ€ΠΈΠ²Π΅Π΄ΠΈΡ‚Π΅ хотя Π±Ρ‹ ΠΎΠ΄Π½Ρƒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΡŒ Π² использовании собствСнного ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ….БобствСнный ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ для сопряТСния с ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ, написанными Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… языках программирования, ΠΈΠ»ΠΈ для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π° с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ срСды исполнСния.Π“Π»Π°Π²Π° 15. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Swing

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ AWT ΡΠ²Π»ΡΡŽΡ‚ΡΡ тяТСловСсными, Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Swing —лСгковСсными

ΠœΠΎΠΆΠ΅Ρ‚ Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΡΡ‚ΠΈΠ»ΡŒ оформлСния ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Swing? Если Π΄Π°, Ρ‚ΠΎ ΠΊΠ°ΠΊΠΎΠ΅ срСдство позволяСт это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ?Π”Π°, ΠΌΠΎΠΆΠ΅Ρ‚. Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡ‹Π΅ стили оформлСния Π² Swing.

Какой ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня Ρ‡Π°Ρ‰Π΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² прилоТСниях?ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ JFrame.

ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня содСрТит нСсколько ΠΏΠ°Π½Π΅Π»Π΅ΠΉ. На ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹?На ΠΏΠ°Π½Π΅Π»ΠΈ содСрТимого.

Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ссылку, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰ΡƒΡŽ сообщСниС "Select an entry from thelist" (Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ элСмСнт ΠΈΠ· списка)?JLabel("Select an entry from the list")

Π’ ΠΊΠ°ΠΊΠΎΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ всС взаимодСйствиС с ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ графичСского ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса?Π’ ΠΏΠΎΡ‚ΠΎΠΊΠ΅ диспСтчСризации событий.

Какая ΠΊΠΎΠΌΠ°Π½Π΄Π° дСйствия связываСтся ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ с ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ JButton? ΠšΠ°ΠΊΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ дСйствия?По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ символьная строка ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ дСйствия содСрТит тСкст надписи Π½Π°ΠΊΠ½ΠΎΠΏΠΊΠ΅. ΠšΠΎΠΌΠ°Π½Π΄Ρƒ дСйствия ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, Π²Ρ‹Π·Π²Π°Π² ΠΌΠ΅Ρ‚ΠΎΠ΄ setActionCommand ().

КакоС событиС формируСтся ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ?Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ ActionEvent.

Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° тСкста ΡˆΠΈΡ€ΠΈΠ½ΠΎΠΉ Π΄ΠΎ 32 символов?JTextField(32)ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ А. ΠžΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° вопросы для самопровСрки 597.

МоТно Π»ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ дСйствия для ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° JTextField? Если ΠΌΠΎΠΆΠ½ΠΎ,Ρ‚ΠΎ ΠΊΠ°ΠΊ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ?Π”Π°, ΠΌΠΎΠΆΠ½ΠΎ. Для этого достаточно Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ setActionCommand ().

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Swing ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„Π»Π°ΠΆΠΎΠΊ? КакоС событиС формируСтся ΠΏΡ€ΠΈ установкС ΠΈΠ»ΠΈ сбросС Ρ„Π»Π°ΠΆΠΊΠ°?Π€Π»Π°ΠΆΠΎΠΊ создаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° JCheckBox. ΠŸΡ€ΠΈ установкС ΠΈΠ»ΠΈ сбросСфлаТка формируСтся событиС ItemEvent.

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ JList ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ список элСмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ. Π’Π΅Ρ€Π½ΠΎ ΠΈΠ»ΠΈ Π½Π΅Π²Π΅Ρ€Π½ΠΎ?Π’Π΅Ρ€Π½ΠΎ.

КакоС событиС формируСтся ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ элСмСнта ΠΈΠ· списка Ρ‚ΠΈΠΏΠ°JList ΠΈΠ»ΠΈ ΠΎΡ‚ΠΌΠ΅Π½Π΅ Π²Ρ‹Π±ΠΎΡ€Π°?Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ ListSelectionEvent.

Π’ ΠΊΠ°ΠΊΠΎΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ задаСтся Ρ€Π΅ΠΆΠΈΠΌ Π²Ρ‹Π±ΠΎΡ€Π° элСмСнтов списка Ρ‚ΠΈΠΏΠ° JList? Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта?Π Π΅ΠΆΠΈΠΌ Π²Ρ‹Π±ΠΎΡ€Π° элСмСнтов списка задаСтся Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ setSelectionMode (). А ΠΌΠ΅Ρ‚ΠΎΠ΄getSelectedlndex () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта.

Подкласс ΠΊΠ°ΠΊΠΎΠ³ΠΎ класса Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Swing-Π°ΠΏΠΏΠ»Π΅Ρ‚Π°?Подкласс JApplet.

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈ построСнии исходного ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса Π² Swing-Π°ΠΏΠΏΠ»Π΅Ρ‚Π°Ρ…ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ invokeAndWait (). Π’Π΅Ρ€Π½ΠΎ ΠΈΠ»ΠΈ Π½Π΅Π²Π΅Ρ€Π½ΠΎ?Π’Π΅Ρ€Π½ΠΎ.