Оглавление
Компоненты |
Аплеты Java могут создавать в своем окне переключатели двух типов: с независимой фиксацией и с зависимой фиксацией.
Переключатели с независимой фиксацией имеют прямоугольную форму и, исходя из названия, работают независимо друг от друга. Если такой переключатель находится во включенном состоянии, внутри изображения маленького квадрата появляется галочка, если в выключенном - галочка исчезает.
Обычно переключатели с независимой фиксацией используются для управления независящими друг от друга режимами или параметрами.
Переключатели с зависимой фиксацией имеют круглую форму. В каждый момент времени может быть включен только один такой переключатель из группы переключателей с фиксацией. Аплет может создавать несколько групп переключателей с зависимой фиксацией.
Переключатели с зависимой фиксацией используются для выбора из нескольких взаимоисключающих возможностей, например, для установки одного из нескольких режимов.
Переключатели с независимой и зависимой фиксацией создаются на базе класса Checkbox. Приведем прототипы конструкторов и методов этого класса:
Создание переключателя с независимой фиксацией без названия
public Checkbox();
Создание переключателя с независимой фиксацией и названием
public Checkbox(String label);
Создание переключателя с зависимой фиксацией и названием
public Checkbox(String label, CheckboxGroup group, boolean state);
Вызов метода createCheckbox
public void addNotify();
Получение группы, к которой относится данный переключатель с зависимой фиксацией
public CheckboxGroup getCheckboxGroup();
Получение названия переключателя
public String getLabel();
Определение текущего состояния переключателя
public boolean getState();
Получение строки параметров
protected String paramString();
Установка группы, к которой относится данный переключатель с зависимой фиксацией
public void setCheckboxGroup(CheckboxGroup g);
Установка названия переключателя
public void setLabel(String label);
Установка нового состояния переключателя
public void setState(boolean state);
Создать переключатель с независимой фиксацией не сложнее, чем создать кнопку:
Checkbox rdbox1; . . . public void init() { chbox1 = new Checkbox("Switch 1"); add(chbox1); }
В этом фрагменте кода мы создаем переключатель chbox1 с названием Switch 1, а затем с помощью метода add добавляем его в контейнер, которым является окно аплета.
Для определения текущего состояния переключателя вы можете использовать метод getState. Если переключатель включен, этот метод возвращает значение true, а если выключен - значение false.
Для каждой группы переключателей с зависимой фиксацией вы должны создать объект класса CheckboxGroup:
public CheckboxGroup();
Получение ссылки на переключатель, который находится во включенном состоянии
public Checkbox getCurrent();
Установка указанного переключателя в группе во включенное состояние
public void setCurrent(Checkbox box);
Получение строки, которая представляет группу
public String toString();
Ссылка на этот объект указывается при создании отдельных переключателей с зависимой фиксацией, входящих в группу:
CheckboxGroup grModeGroup; Checkbox rdbox1; Checkbox rdbox2; Checkbox rdbox3; Checkbox rdbox4; . . . public void init() { grModeGroup = new CheckboxGroup(); rdbox1 = new Checkbox("Mode 1", grModeGroup, true); rdbox2 = new Checkbox("Mode 2", grModeGroup, false); rdbox3 = new Checkbox("Mode 3", grModeGroup, false); rdbox4 = new Checkbox("Mode 4", grModeGroup, false); add(rdbox1); add(rdbox2); add(rdbox3); add(rdbox4); }
Через первый параметр конструктору Checkbox в этом примере передается название переключателя, через второй - ссылка на группу, а через третий - состояние, в которое должен быть установлен переключатель. Из всех переключателей группы только один может находиться во включенном состоянии.