Студопедия — Основные сведения. Элементы управления GroupBox, RadioButton, ListBox, ComboBox
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Основные сведения. Элементы управления GroupBox, RadioButton, ListBox, ComboBox






Элементы управления GroupBox, RadioButton, ListBox, ComboBox

GroupBox (группировка) – позволяет объединять в группу отдельные элементы управления, по периметру выделена линией и вверху содержит текст, определенный в свойстве Text. Рамка группы темнее цвета фона.

Обычно группы используются в качестве «родителя» кнопок-переключателей (radio buttons). Все переключатели внутри одной группы взаимоисключающие. Нажатие клавиш со стрелками перемещает фокус ввода и метку выбора между переключателями.

RadioButton (переключатель) - элемент управления, который обычно представляет собой кружок, расположенный слева от текста. У класса RadioButton есть свойство Appearance, которому можно задать значение AppearanceButton - тогда элемент управления выглядит как кнопка, а также свойство CheckAlign, позволяющее менять положение кружка относительно текста.

Также у RadioButton есть булево свойство Checked, при изменении которого инициируется событие CheckedChanged.

По умолчанию значение AutoCheck равно true и если значение AutoCheck равно true и RadioButton «включен», щелчок кнопки ничего не изменит. Если AutoCheck равно true и RadioButton «выключен», щелчок мышью его «включит». Вдобавок, все «родственные» переключатели «выключатся».

Таким образом, в каждый момент включен всего лишь один из группы переключателей RadioButton. Обычно наборы взаимоисключающих кнопок-переключателей создаются как потомки GroupBox, хотя «родитель» у них может быть любой.

Обратите внимание, что «родственные» переключатели поддерживают ввод с клавиатуры: переключение осуществляется клавишами со стрелками.

Если не нужна немедленная реакция на изменения, нет необходимости устанавливать обработчик события CheckedChanged.

Однако если потребуется определить, какой из переключателей выбран, надо в цикле проверить свойства Checked всех родственных переключателей.

Если AutoCheck равно false, можно обрабатывать событие Click и самостоятельно включать/отключать переключатели. При желании можно сделать включенными несколько переключателей, но пользователя такая ситуация наверняка поставит в тупик.

ListBox (список) - содержит прокручиваемый набор объектов. По умолчанию пользователь враве выбрать один (или несколько) элементов, используя клавиатуру или мышь. Выбранные объекты выделяются.

Отображаемые элементы списка задаются свойством Items - объектом типа
ListBox.ObjectCollection. В классе ListBox.ObjectCollection определен метод Add, позволяющий добавлять новые объекты в набор. В списке отображаются текстовые названия элементов, возвращаемые методом ToString каждого объекта. Свойство Sorted
объекга ListBox обеспечивает автоматическую сортировку элементов. После этого
можно использовать свойство Items объекта ListBox для обращения к отдельным
объектам наподобие того, как это делают с массивом.

Список также можно заполнить элементами из источника данных — объекта, реа-
лизующего интерфейс IList (например, массив) или объект DataSet.

В свойстве SelectedIndex хранится индекс выбранного в данный момент элемента. Если выбранных элементов нет, его значение равно -1. Свойство SelectedItem представляет фактический выбранный элемент (объект). Оно может быть равным null. При выборе какого-либо элемента списка выражение:

Listbox.SelectedItem

эквивалентно выражению:

Listbox.Items[Listbox.SelectedIndex]

Следующие два выражения также равносильны:

Listbox.Text

и

Listbox.SelectedItem.ToString()

По умолчанию в списке разрешается выбрать только один элемент. Однако вы вправе разрешить множественное выделение, задав свойству SelectionMode одно из значений перечисления SelectionMode: None, One, MultiSimple или MultiExtended.

Вариант MultiSimple слегка меняет вид ListBox, делая различия между выбранными элементами (указанны выделением) и фокусом ввода (указан пунктиром). Фокус ввода перемещают клавишами-стрелками, а пробелом или мышью выбирают или отменяют выбор элементов. Вариант MultiExtended разрешает выбирать только диапазон последовательных элементов, для чего пользователь должен, придерживая клавишу Shift, стрелками выбрать нужный диапазон.

В списках с возможностью выбора нескольких элементов используется свойство «только для чтения» SelectedIndices (объект типа ListBoxSelectedlndexCollection) или SelectedItems (объект типа ListBoxSelectedObjectCollection).

Объекты ListBoxSelectedIndexCollection и ListBoxSelectedObjectCollection поддерживают индексы и доступ к отдельным элементам по механизму массива целых чисел.

Для получения информации об изменении выбранного элемента (или элементов) устанавливают обработчик события OnSelectedIndexChanged или OnSelectedValueChanged.

Если нужно, чтобы элементы списка отображались методом, отличным от ToString, можно использовать функцию элемента управления ListBox, называемую отрисовка владельцем (owner draw). В этом случае программа уведомляется посредством событий о необходимости отрисовки элемента списка.

При использовании отрисовки владельцем первым делом надо присвоить свойству DrawMode значение DrawMode.OwnerDrawFixed (все пункты списка имеют одну высоту) или DrawMode.OwnerDrawVariable (пункты списка разной высоты). По умолчанию значение свойства DrawMode равно DrawMode.Normal, что возлагает обязанность отрисовки на сам элемент управления.

Если все элементы списка одинаковой высоты, ее нужно указать в свойстве ItemHeight. В противном случае необходимо задействовать событие MeasureItem, обработчик которого задается в соответствии с делегатом MeasureItemEventHandler. Предоставляемый сообщением объект MeasureItemEventArgs имеет свойства для чтения Graphics и Index. Первое представляет собой объект типа Graphics, служащий для вычисления высоты элемента, а последнее - числовой индекс элемента списка. Высота и ширина элемента задается свойствами ItemHeight и ItemWidth.

При отрисовке владельцем необходимо установить обработчик события DrawItem. Обработчик вызывается для каждого отображаемого элемента, при этом ему передается объект типа DrawItemEventArgs с несколькими свойствами ListBox «только для чтения»: BackColor, ForeColor и Font. Свойство Bounds — это объект типа Rectangle, в котором выполняется отрисовка. Кроме этого, обработчик получает объекты Graphics и Index. Свойство State — это член перечисления DrawItemState, которое указывает, выбран ли элемент, имеет фокус ввода и т. д. Класс DrawItemEventArgs также включает два метода, DrawBackground и DrawFocusRectangle, помогающие в отрисовке элемента списка.

ComboBox (Поле со списком) - это комбинация списка и текстового окна. В обычном состоянии отображается только текстовое окно со стрелкой «вниз» справа. По щелчку этой стрелки раскрывается список — внизу появляется окно со списком. По умолчанию пользователь вправе ввести текст в текстовое окно (чтобы выбрать элемент списка), редактировать отображаемый в окне текст или ввести совершенно новый текст. Введенный текст не добавляется автоматически в список — это делается из программы. Большинство программ не разрешают редактирование текста. Такое поведение управляется свойством DropDownStyle — членом перечисления ComboBoxStyle, содержащего следующие члены:

- Simple - текст можно редактировать, список постоянно открыт;

- DropDown - текст можно редактировать, список отображается по щелчку (по умолчанию);

- DropDownList - текст редактировать нельзя, список отображается по щелчку.

Для раскрытия списка (или определения его положения в текущий момент) можно использовать свойство DroppedDown.

Как и в ListBox, в программе можно задействовать свойства SelectedIndex и SelectedItem для определения или получения выбранного элемента. Поля со списком не поддерживают множественный выбор. Выбранный элемент отображается в текстовом окне элемента управления и доступен через свойство Text. В момент ввода текста в поле текстового окна свойство SelectedIndex равно -1, a SelectedItem - null.

Как и в ListBox, для обнаружения момента изменения выбранного элемента задействуют обработчики событий SelectedIndexChanged или SelectedValueChanged. Событие TextChanged информирует об изменении текста в верхней части ComboBox – из-за выбора другого элемента или ввода текста.

Элементы управления для работы с числами и датой







Дата добавления: 2014-11-10; просмотров: 946. Нарушение авторских прав; Мы поможем в написании вашей работы!



Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

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

Ученые, внесшие большой вклад в развитие науки биологии Краткая история развития биологии. Чарльз Дарвин (1809 -1882)- основной труд « О происхождении видов путем естественного отбора или Сохранение благоприятствующих пород в борьбе за жизнь»...

Этапы трансляции и их характеристика Трансляция (от лат. translatio — перевод) — процесс синтеза белка из аминокислот на матрице информационной (матричной) РНК (иРНК...

МЕТОДИКА ИЗУЧЕНИЯ МОРФЕМНОГО СОСТАВА СЛОВА В НАЧАЛЬНЫХ КЛАССАХ В практике речевого общения широко известен следующий факт: как взрослые...

СИНТАКСИЧЕСКАЯ РАБОТА В СИСТЕМЕ РАЗВИТИЯ РЕЧИ УЧАЩИХСЯ В языке различаются уровни — уровень слова (лексический), уровень словосочетания и предложения (синтаксический) и уровень Словосочетание в этом смысле может рассматриваться как переходное звено от лексического уровня к синтаксическому...

Плейотропное действие генов. Примеры. Плейотропное действие генов - это зависимость нескольких признаков от одного гена, то есть множественное действие одного гена...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия