6.3 Компоненты AWT (часть 3)

  Checkbox и RadioButton

Флажки (checkboxes), как мы знаем, используются для реализации мультиопции для пользователя, с помощью которой пользователь может выбрать или снять выделение, нажимая по ним. Radiobutton используются подобно checkbox, но они в основном используются как переключатели, чтобы определить выбор. Различие между radiobuttons и checkboxes - то, что мы выбираем единственный radiobutton из группы radiobutton, в противоположность checkboxes, где может быть выбран более чем один checkbox.

Чтобы создавать checkbox или radiobutton, мы должны установить начальное значение, то есть или выбранный или невыбранный.
          1. Создайте элемент (checkbox или radiobutton)
          2. Определите начальное значение
          3. Определите размещение на экране
          4. Разместите на экране

Checkbox компонент может также создать радио-кнопки, используя дополнительный класс по имени CheckboxGroup. Процедура создания radiobutton будет обсуждена позже.

Рассмотрим некоторые из конструкторов для создания Checkbox в Java:
          ■ checkbox () : Создаёт пустой checkbox
          ■ checkbox (string text) :Создаёт checkbox с заданной строкой типа метки

Чтобы создавать radiobuttons, мы сначала создаем объект CheckboxGroup следующим образом:
CheckboxGroup cg=new CheckboxGroup () ;

Затем мы создаём каждую из радио-кнопок следующим образом:
Checkbox male=new Checkbox( male ,eg,true);
Checkbox female=new Checkbox( female ,eg,false);

Методы setState( ) и getState( ) используются, чтобы устанавливать и находить состояние checkbox.

Пример 6 показывает, как использовать радио-кнопки.

Пример 6:
import j ava.awt.*;
class Qualification extends Frame { CheckboxGroup cg=new CheckboxGroup();
Checkbox rl=new Checkbox! Undergraduate ,eg,false);
Checkbox r2=new Checkbox( Graduate ,eg,false);
Checkbox r3=new Checkbox( Post Graduate ,eg,false);
Checkbox r4=new Checkbox( Doctorate ,eg,false);
Label lbl=new Label( What s your primary qualification? );
public Qualification(String s ) {
super(s) ;
setLayout(new GridLayout(6,1));
add(lbl);
add(rl);
add(r2);
add(r3);
add(r4);
           }

public static void main(String args[]) { Qualification q=new Qualification ( Literacy! ); q.setSize(400,400); q.show( );
           }
}

Здесь мы используем класс CheckboxGroup, чтобы создать радио-кнопки. Чтобы создавать радио-кнопки, мы все еще должны использовать класс Checkbox, но на сей раз мы передаем три параметра для его конструктора - метку строки, случай CheckboxGroup и начальное состояние радио-кнопки.

Вывод показан на рисунке 6.7


Рисунок 6.7: Вывод примера 6


  Lists

Класс List обеспечивает компактный многоэлементный список со множественным выбором и прокруткой.

Процедура создания списков:
         1. Создайте элемент списка
         2. Один за другим добавьте элементы (строки)
         3. Определите размещение на экране
         4. Разместите на экране

В Java реализован также класс Choice (), который даёт нам возможность создавать выпадающие списки. Сначала, когда создан список, он пуст.
Choice moviestars=new Choice ();

Затем мы добавляем элементы списка с помощью метода addltem() как показано ниже:
moviestars.addltem( Antonio Banderas );
moviestars.addltem( Leonardo DiCaprio ) ;

Законченная программа для создания выпадающего списка показана в примере 7.

Пример 7:
import j ava.awt.*;
class Stars extends Frame { Choice moviestars = new Choice ( ); Label lbl=new Label( Who is your favorite movie star? );
public Stars(String s) {
super(s);
setLayout(new FlowLayout());
moviestars.addltem( Antonio Banderas );
moviestars.addltem( Leonardo DiCaprio );
moviestars.addltem( Sandra Bullock ) ;
moviestars.addltem( Hugh Grant ) ;
moviestars.addltem( Julia Roberts ) ;

add(lbl);
add(moviestars);
}
public static void main(String args[]) {
Stars s=new Stars ( A sky full of stars! );
s.setSize(400,400);
s.show();
           }
}

Вывод продемонстрирован на рисунке 6.8


Рисунок 6.8: Вывод примера 7

назад к оглавлению вперед

Rus. Open Source company, г. Саратов
ул. Орджоникидзе, 156, офис 203
тел: 8 (8452) 57-84-41
e-mail: info@rus_opensource.com

Главная | Обзоры | О разном
Карта сайта

Учебная литература:

Введение в Linux
Основы JAVA
Архивы

© 2013 opensourcerules.net