События

Кроме Событий класса Component: ComponentEvent, FocusEvent, KeyEvent, MouseEvent, при изменении текста пользователем происходит событие TextEvent.

В листинге 10.3 создаются три поля: tf1, tf2, tf3 для ввода имени пользователя, его пароля и заказа, и не редактируемая область ввода, в которой накапливается заказ. В поле ввода пароля tf2 появляется эхо-символ *. Результат показан на рис. 10.3.

Листинг 10.3. Поля ввода

import j ava.awt.*; 

import j ava.awt.event.*;

class TextTest extends Frame{ 

TextTesttString s){ 

super(s); 

setLayout(null); 

setFont(new Font("Serif", Font.PLAIN, 14));

Label 11 = new Label("Ваше имя:", Label.RIGHT);

11.setBounds(20, 30, 70, 25); add(11);

Label 12 = new Label("Пароль:", Label.RIGHT);

12.setBounds(20, 60, 70, 25); add(12);

TextField tfl = new TextField(30) ;

tf1.setBounds(100, 30, 160, 25); add(tfl);

TextField tf2 = new TextField(30); 

tf2.setBounds(100, 60, 160, 25); 

add(tf2); tf2.setEchoChar('*');

TextField tf3 = new TextField("Введите сюда Ваш заказ", 30); 

tf3.setBounds(10, 100, 250, 30); add(tf3);

TextArea ta = new TextArea("Ваш заказ:", 5, 50,

TextArea.SCROLLBARS_NONE); 

ta.setEditable(false); 

ta.setBounds(10, 150, 250, 140); add(ta);

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

Ы.setBounds(280, 180, 100, 30); add(bl);

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

Ь2.setBounds(280, 220, 100, 30); add(b2);

Button b3 = new Button("Выйти");

ЬЗ.setBounds(280, 260, 100, 30); add(b3);

setSize(400, 300); setVisible(true);

public static void main(String[] args){ 

Frame f = new TextTest(" Поля ввода"); 

f.addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent ev){

System.exit(0); 

}

}); 

}

 Рис. 10.3. Поля ввода

 

Сайт создан в системе uCoz