Иллюстрированный самоучитель по Java



События


Кроме событий класса

Component: ComponentEvent, FocusEvent, KeyEvent, MouseEvent

, при изменении значения пользователем происходит событие Adj ustmentEvent.

В листинге 10.4 создаются три вертикальные полосы прокрутки — красная, зеленая и синяя, позволяющие выбрать какое-нибудь значение соответствующего цвета в диапазоне 0—255, с начальным значением 127. Кроме них создается область, заполняемая получившимся цветом, и две кнопки. Линейки прокрутки, их заголовок и масштабные метки помещены в отдельный контейнер р типа Panel. Об этом чуть позже в данной главе.

Как все это выглядит, показано на рис. 10.4. В листинге 12.6 мы "оживим" эту программу.

Листинг 10.4.

Линейки прокрутки для выбора цвета

import j ava.awt.*;

import j ava.awt.event.*;

class ScrollTest extends Frame!

Scroiibar sbRed = new Scroiibar{Scroiibar.VERTICAL, 127, 10, 0, 255);

Scroiibar sbGreen = new Scroiibar(Scroiibar.VERTICAL, 127, 10, 0, 255);

Scroiibar sbBlue = new Scroiibar(Scroiibar.VERTICAL, 127, 10, 0, 255);

Color mixedColor = ,new Color(127, 127, 127);

Label 1m = new Label();

Button Ы = new Button("Применить");

Button b2 = new Button("Отменить");

ScrollTest(String s){ super(s); 

setLayout(null); 

setFont(new Font("Serif", Font.BOLD, 15));

Panel p = new Panel(); 

p.setLayout(null); 

p.setBounds(10,50, 150, 260); add(p);

Label Ic = new Label("Подберите цвет"); 

lc.setBounds(20, 0, 120, 30); p.add(lc);

Label Imin = new Label("0", Label.RIGHT); 

lmin.setBounds(0, 30, 30, 30); p.add(lmin); 

Label Imiddle = new Label("127", Label.RIGHT); 

Imiddle.setBounds(0, 120, 30, 30); p.add(Imiddle); 

Label Imax = new Label("255", Label.RIGHT); 

Imax.setBounds(0, 200, 30, 30); p.add(Imax);

sbRed.setBackground(Color.red);

sbRed.setBounds(40, 30, 20, 200); p.add(sbRed);

sbGreen.setBackground(Color.green);




Содержание  Назад  Вперед