- •Федеральное агентство по образованию государственное образовательное учреждение
- •Кафедра автоматики и телемеханики интегрированная среда разработки приложений
- •Лабораторная работа 1 Ознакомление с Интегрированной Средой Разработки (иср)
- •Основное окно иср
- •Библиографический список
- •Лабораторная работа 2 Формы и компоненты Включение в проект новой формы
- •Размещение компонентов на форме
- •Депозитарий – хранилище форм и проектов
- •Задание 7. Опробовать режимы заимствования форм из Депозитария
- •Библиографический список
- •Лабораторная работа 3 Отладка приложений Компиляция и компоновка проекта
- •Сообщения компилятора и компоновщика
- •Действия в случае ошибки выполнения
- •Дальнейшие действия
- •Окно наблюдения Список Часов
- •Окно оценки и модификации Оценить|Изменить
- •Пошаговое выполнение приложения
- •Точки прерывания
- •Использование окна Инспектора Отладки
- •Другие средства отладки
- •Библиографический список
- •Лабораторная работа 4 Компоненты ввода и отображения текстовой информации
- •Компоненты Label, StaticText, Panel
- •Компоненты Edit, LabeledEdit, MaskEdit
- •Компоненты Memo, RichEdit
- •Компоненты ListBox, CheckListBox, ValueListEditor
- •Компонент StringGrid
- •Библиографический список
- •Лабораторная работа 5 Диаграммы и графики Компонент Chart
- •Компонент Image
- •Формирование квадратных матриц
- •Кнопки, индикаторы, управляющие элементы
- •Управляющие кнопки Button и BitBtn
- •Кнопка с фиксацией SpeedButton
- •Группы радиокнопок − компоненты RadioGroup, RadioButton и GroupBox
- •Индикаторы CheckBox и CheckListBox
- •Ползунки и полосы прокрутки − компоненты TrackBar и ScrollBar
- •Заголовки − компоненты HeaderControl и Header
- •Таймер − компонент Timer
- •Панели и компоненты внешнего оформления
- •Панели общего назначения − компоненты Panel,
- •Многостраничные панели − компоненты TabControl,
- •Инструментальные панели − компоненты ToolBar и PageScroller
- •Перестраиваемые панели − компоненты CoolBar и ControlBar
- •Библиографический список
- •Лабораторная работа 9 Системные диалоги
- •Диалоги открытия и сохранения файлов – компоненты
- •Фрагменты диалогов – компоненты
- •Диалог выбора шрифта – компонент FontDialog
- •Диалоги выбора цвета – компоненты ColorDialog, ColorBox
- •Диспетчеризация действий на основе компонента ActionList
- •Диспетчеризация действий на основе компонентов ActionManager, ActionMainMenuBar, ActionToolBar, CustomizeDlg
- •Библиографический список
Индикаторы CheckBox и CheckListBox
Индикаторы с флажком CheckBox используются в основном для того, чтобы пользователь мог включать и выключать какие-то опции, или для индикации состояния.
При каждом щелчке пользователя на индикаторе его состояние изменяется, проходя последовательно через три значения (при значении свойства AllowGrayed равном true): промежуточное (серое окно индикатора и серая галочка), выделение (появление черной галочки) и не выделенное (пустое окно индикатора).
Этим трем состояниям соответствуют три значения свойства State: cbGrayed, cbChecked, cbUnchecked. При AllowGrayed = false (значение по умолчанию), допускается только два состояния: выделенное и невыделенное. И State, и AllowGrayed можно устанавливать во время проектирования или программно во время выполнения.
Проверять состояние индикатора можно не только по значению State, но и по значению свойства Checked. Если Checked равно true, то индикатор выбран, т.е. State = cbChecked. Если Checked равно false, то State равно cbUnchecked или cbGrayed. Установка Checked в true во время проектирования или выполнения автоматически переключает State в cbChecked.
В индикаторе CheckBox надпись задается свойством Caption, а ее размещение по отношению к индикатору − свойством Alignment.
Список CheckListBox − это еще один компонент, имеющий индикаторы (см. лабораторную работу 4). Каждая строка списка имеет индикатор, состояние которого пользователь может изменять.
Состояния индикаторов определяют два свойства: State и Checked. Оба эти свойства можно рассматривать как индексированные массивы, каждый элемент которого соответствует индексу строки. Общее количество элементов определяется свойством Count (только для чтения). Поскольку индексы начинаются с нуля, то индекс последнего элемента равен Count – 1.
Свойства State и Checked можно устанавливать программно или читать, определяя установки пользователя. Например, операторы
CheckListBox1->Checked[1] = true;
CheckListBox1->State[2] = cbGrayed;
Устанавливают индикатор второй строки списка CheckListBox1 в состояние выбранного, а индикатор третьей строки − в промежуточное состояние.
Оператор
for(int i=0; i < CheckListBox1->Items->Count; i++)
if(CheckListBox1->Checked[i] …
проверяет состояние всех индикаторов списка, и для выбранных пользователем строк осуществляет какие-то действия (многоточие).
В компоненте CheckListBox имеется событие OnClickCheck, возникающее при каждом изменении пользователем состояния индикатора. Его можно использовать для обработки результатов изменения.
Продолжим выполнение задания 3.
Перенесите на форму панель Panel, на которой по горизонтали разместите метку Label с надписью CheckBox и два индикатора CheckBox с надписями опция 1 и опция 2 соответственно. В первом индикаторе свойство AllowGrayed установите в false, а во втором − в true. Выполните приложение. Убедитесь в том, что первый индикатор имеет два положения, а второй − три.