Переключатели

Оглавление Компоненты Кнопки Переключатели Списки Choice Списки List Поле Label Поле TextField Поле TextArea Аплет FormDemo

Назад Вперед

Аплеты Java могут создавать в своем окне переключатели двух типов: с независимой фиксацией и с зависимой фиксацией.

Переключатели с независимой фиксацией имеют прямоугольную форму и, исходя из названия, работают независимо друг от друга. Если такой переключатель находится во включенном состоянии, внутри изображения маленького квадрата появляется галочка, если в выключенном - галочка исчезает.

Обычно переключатели с независимой фиксацией используются для управления независящими друг от друга режимами или параметрами.

Переключатели с зависимой фиксацией имеют круглую форму. В каждый момент времени может быть включен только один такой переключатель из группы переключателей с фиксацией. Аплет может создавать несколько групп переключателей с зависимой фиксацией.

Переключатели с зависимой фиксацией используются для выбора из нескольких взаимоисключающих возможностей, например, для установки одного из нескольких режимов.

Класс Checkbox

Переключатели с независимой и зависимой фиксацией создаются на базе класса Checkbox. Приведем прототипы конструкторов и методов этого класса:

Конструкторы

Создание переключателя с независимой фиксацией без названия

    public Checkbox();

Создание переключателя с независимой фиксацией и названием

    public Checkbox(String label);

Создание переключателя с зависимой фиксацией и названием

    public Checkbox(String label,
      CheckboxGroup group, boolean state);

Методы

- addNotify

Вызов метода createCheckbox

    public void addNotify();

- getCheckboxGroup

Получение группы, к которой относится данный переключатель с зависимой фиксацией

    public CheckboxGroup getCheckboxGroup();

- getLabel

Получение названия переключателя

    public String getLabel();

- getState

Определение текущего состояния переключателя

    public boolean getState();

- paramString

Получение строки параметров

    protected String paramString();

- setCheckboxGroup

Установка группы, к которой относится данный переключатель с зависимой фиксацией

    public void setCheckboxGroup(CheckboxGroup g);

- setLabel

Установка названия переключателя

    public void setLabel(String label);

- setState

Установка нового состояния переключателя

    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 в этом примере передается название переключателя, через второй - ссылка на группу, а через третий - состояние, в которое должен быть установлен переключатель. Из всех переключателей группы только один может находиться во включенном состоянии.

Назад Вперед