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

Переключатель(OptionButton)

Поместите на форму три элемента управления OptionButton. Запустите проект. Пощелкайте внутри кружочков. Вы видите, что из всех переключателей в любой момент времени только один может быть выбран, остальные автоматически отключаются. Это полезное свойство удобно применять там, где нужно выбрать только одну из нескольких возможностей. Например, если персонажу вашей игры нужно выбрать одно оружие из четырех, вы организуете такую группу переключателей:

 

 

А что делать, если вам на той же форме нужно организовать еще одну группу переключателей, например, для выбора поля сражения? Для этого нужно каждую группу поместить в свой контейнер, например, рамку:

 

 

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

Вы скажете, что переключатели и флажки - это одно и то же. Неверно. Флажков в любой момент времени может быть установлено сколько угодно, хоть все, а из переключателей может быть выбран только один.

 

Так же, как и у флажка, главным свойством переключателя является Value. Только тип этого свойства логический - когда переключатель выбран, оно равно True. Компьютер может узнать, выбран ли переключатель Option1, при помощи следующего оператора:

If Option1.Value = True Then ….….

Учитывая, что тип свойства логический, можно сократить эту запись:

If Option1.Value Then ….….

А можно и еще сократить. Visual Basic позволяет обращаться к главному свойству элемента управления (в нашем случае это Value) сокращенно - вместо Option1.Value - просто Option1. Получается:

If Option1 Then ….….

Вот фрагмент, позволяющий узнать, какой из переключателей группы выбран (имена переключателей: Option1, Option2, …):

If Option1 Then

Debug.Print "Выбран бластер"

ElseIf Option2 Then

Debug.Print "Выбран скорчер"

…………………

End If

 

Если вам нужно, чтобы некоторое действие было выполнено не потом, а сразу же после щелчка по переключателю, вы можете для каждого переключателя написать процедуру обработки события Click, но гораздо удобнее объединить все переключатели группы в массив, тогда процедуру придется писать только одну:

Private Sub Option1_Click(Index As Integer)

Select Case Index

Case 0

Debug.Print "Выбран бластер"

Case 1

Debug.Print "Выбран скорчер"

………………….

End Select

End Sub

 

Поэкспериментируйте с цветами, шрифтом переключателя. Переключатель, как и флажок, может иметь графический внешний вид (свойство Style) - с участием картинок.


Дата добавления: 2015-10-26; просмотров: 113 | Нарушение авторских прав


Читайте в этой же книге: Функция MsgBox | Отладка программы. Окна отладки. Режимы отладки. | Объекты. Их свойства, их события, их методы | Первый способ - Загрузка в Visual Basic готовых изображений | Способ - Рисуем при помощи графических методов | Зачем нужны процедуры пользователя | Операторы Stop, End и Exit Sub | Private Sub Включить_сигнал_будильника() | Проект - Гонки (игра) | Использование массивов при программировании игр |
<== предыдущая страница | следующая страница ==>
Массивы элементов управления| Список (ListBox) и поле со списком (ComboBox)

mybiblioteka.su - 2015-2024 год. (0.005 сек.)