Из нескольких событий, связанных с переключателями, реально используется только событие Click.
Click | KeyDown | MouseMove | OLEGiveFeedback |
DblClick | KeyPress | MouseUp | OLESetData |
DragDrop | KeyUp | OLECompleteDrag | OLEStartDrag |
DragOver | LostFocus | OLEDragDrop | Validate |
GotFocus | MouseDown | OLEDragOver |
Обычно в программах проверяется свойство Value — по нему можно узнать, в каком состоянии находится переключатель. Определив состояние, приложение выполняет необходимые действия. Чаще всего свойство Value проверяется в процедуре события Click кнопки, нажатой после установки нужного переключателя. Это позволяет проверить перед вызовом следующей процедуры некоторое условие с помощью конструкций If... End или Select Case... End Select. Тем не менее в некоторых ситуациях действие должно выполняться сразу после установки переключателя, и тогда приходится перехватывать событие Click. Рассмотрим следующий пример:
1. Запустите проект Controls командой Run > Start.
2. Нажмите кнопку Option Buttons на форме Control Examples.
3. Щелкните на любом переключателе и посмотрите на надпись в верхней части формы. Свойство Caption надписи изменяется в процедуре события Click соответствующего переключателя.
|
|
4. После просмотра результатов закройте диалоговое окно кнопкой Close.
5. Завершите приложение кнопкой Exit на форме Control Examples.
Чтобы просмотреть код данного примера, выполните следующие действия:
1. Дважды щелкните на форме frmOptions в окне проекта, чтобы активизировать ее.
2. Дважды щелкните на переключателе 486, чтобы открыть окно программы. В окне содержится следующий код:
Private Sub opt486_Click()
‘присвоить значение строковой переменной
strComputer = "486"
‘вызвать подпрограмму
Call DisplayCaption
End Sub
Процедура события Click сначала присваивает переменной strComputer значение 486, а затем вызывает другую процедуру, которая изменяет текст надписи. 3 Выберите строку (General) из списка в левой верхней части окна (он называется списком объектов). Затем выберите строку (DisplayCaption) из списка процедур в правой верхней части окна. В окне программы появляется код процедуры DisplayCaption:
Sub DisplayCaption()
' объединить текст надписи с двумя строковыми переменными
lblDisplay. Caption = "Вы выбрали компьютер" & _
strComputer & "с системой" & strSystem
End Sub
Обратите внимание — свойство Caption надписи lblDisplay задается именно в этой процедуре, вызываемой из процедуры Click каждого переключателя.