Переключатели и флажки в Delphi

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

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

Флажок представлен компонентом ChekBox. Он выглядит как прямоугольник с текстовым заголовком. Если в нем есть галочка, то опция включена (флажок отмечен).

Для определения состояния флажка используется свойство Checked логического типа (по умолчанию – False, флажок снят).

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

При каждом щелчке пользователя на индикаторе его состояние изменяется, проходя в общем случае последовательно через три значения: выделение (появление черной галочки), промежуточное (серое окно индикатора и серая галочка) и не выделенное (пустое окно индикатора). Этим трем состояниям соответствуют три значения свойства компонента State:
— cbChecked;
— cbGrayed;
— cbUnchecked.

Эти три состояния допускаются только при значении другого свойства AllowGrayed равном true. Если же AllowGrayed = false (значение по умолчанию), то допускается только два состояния: выделенное и не выделенное.

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

В индикаторе CheckBox надпись задается свойством Caption, а ее размещение по отношению к индикатору – свойством Alignment.

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

Свойство Caption содержит надпись, появляющуюся около кнопки. Значение свойства Alignment определяет, с какой стороны от кнопки появится надпись. Свойство Checked определяет, выбрана ли данная кнопка пользователем, или нет. Поскольку в начале выполнения приложения обычно надо, чтобы одна из кнопок группы была выбрана по умолчанию, ее свойство Checked надо установить в true в процессе проектирования.

Переключатели обычно располагаются по группам (форма Form, панель Panel, группа GroupBox). Выбор переключателя является взаимоисключающим, т.е. при выборе одного переключателя другие становятся не выбранными.

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

В Delphi есть специализированный компонент RadioGroup, представляющий собой группу переключателей RadioButton.

Управлением числом и названиями переключателей производится с помощью свойства Items. Доступ к отдельному переключателю можно получить через свойство ItemIndex (позиция переключателя).

Свойство Columns задает число столбцов, на которое разбиваются переключатели при расположении в группе.

Добавить комментарий