Private Sub Command2_Click()
Form2.Hide
End Sub
Rem Третья кнопка изменяет размер формы Form2
Private Sub Command3_Click()
If Form2.Height > 2500 Then
Form2.Height = 1000: Form2.Width = 1000
Else
Form2.Height = 3000: Form2.Width = 3000
End If
End Sub
Private Sub Form_OKClick()
App.End
End Sub
Rem Двойной щелчок по компоненту списка очищает его содержимое
Private Sub List1_DblClick()
List1.Clear
End Sub
Rem Вывод сообщений о показе и скрытии виртуальной клавиатуры
Private Sub Form_SIPChange(ByVal IsV As Boolean)
If IsV Then
List1.AddItem «Клавиатура показана»
Else
List1.AddItem «Клавиатура скрыта»
End If
End Sub
Rem Далее в подпрограммах отслеживаем события от клавиатуры и мыши
Private Sub Form_KeyDown(ByVal KeyCode As Integer, ByVal shift As Integer)
List1.AddItem «Text1_KeyDown»
End Sub
Private Sub Form_KeyPress(ByVal KeyAscii As Integer)
List1.AddItem «Text1_KeyPress»
End Sub
Private Sub Form_KeyUp(ByVal KeyCode As Integer, ByVal shift As Integer)
List1.AddItem «Text1_KeyUp»
End Sub
Private Sub Form_MouseDown(ByVal button As Integer, ByVal shift As Integer, x, y)
List1.AddItem «Form_MouseDown»
End Sub
Private Sub Form_MouseUp(ByVal button As Integer, ByVal shift As Integer, _x, y)
List1.AddItem «Form_MouseUp»
End Sub
Rem Для того чтобы не засорять список, событие передвижения указателя
Rem мыши над формой мы обрабатываем только при нажатой левой клавише
Private Sub Form_MouseMove(ByVal button As Integer, ByVal shift As Integer, x, y)
If button = 1 Then List1.AddItem «Form_MouseMove»
End Sub
6. Перейти в окне Project Explorer к форме Form2. В ее модуле следует ввести код, приведенный в листинге 3.10.
Private Sub Form_QueryUnload(ByVal cancel As Integer, unloadmode)
Form1.List1.AddItem «Form2 QueryUnload»
End Sub
Private Sub Form_Activate()
Form1.List1.AddItem «Form2 Activate»
End Sub
Private Sub Form_Deactivate()
Form1.List1.AddItem «Form2 Deactivate»
End Sub
Private Sub Form_GotFocus()
Form1.List1.AddItem «Form2 Получила фокус»
End Sub
Private Sub Form_LostFocus()
Form1.List1.AddItem «Form2 Потеряла фокус»
End Sub
Private Sub Form_Paint()
Form1.List1.AddItem «Form2 перерисована»
End Sub
Private Sub Form_Load()
Form1.List1.AddItem «Form2 загружена»
End Sub
Private Sub Form_Resize()
Form1.List1.AddItem « Form2 Resize»
End Sub
7. Выполнить команду меню Run ► Execute и запустить приложение в эмуляторе. На экран будет выведена первая форма.
8. После нажатия кнопки 1 на экран будет выведена вторая форма, а в ListBox будут выведены сообщения о том, какими событиями сопровождался показ этой формы.
9. Переместить форму Form2 так, чтобы форма выходила за пределы экрана. При этом будет отображено сообщение о том, что форма перерисована.
10. Нажать кнопку 3. После этого нажатия фокус ввода будет перенесен на форму Form1, а форма Form2 будет скрыта. Поэтому появятся сообщения о том, что форма Form2 деактивирована, потеряла фокус, а затем о том, что она два раза поменяла размер. Это соответствует истине, так как сначала был изменен вертикальный, а затем горизонтальный