Владимир Волков

Программирование для карманных компьютеров


Скачать книгу

применение методов DrawCircle, DrawLine и Move для того, чтобы перемещать форму Form2 и рисовать на ее поверхности круг и прямоугольник.

      9. Кроме кода обработчика события тика таймера необходимо после строки Option Explicit ввести еще один блок кода объявления и инициализации переменных, приведенный в листинге 3.4.

Листинг 3.4

      Dim a, b, i, j

      i=0

      j=0

      a = 100

      b = 50

      10. В окне Project Explorer необходимо переключиться на объект Form1. Для кнопок Command1 и Command2 свойство Caption должно получить значения Показать и Очистить соответственно.

      11. Двойным щелчком на кнопке Command1 создать обработчик события щелчка на кнопке и ввести для него код, приведенный в листинге 3.5.

Листинг 3.5

      Private Sub Command1_Click()

      If ShFrm2 Then

      Form2.Show

      ShFrm2 = False

      Command1.Caption = «Скрыть»

      Else

      Form2.Hide

      ShFrm2 = True

      Command1.Caption = «Показать»

      End If

      End Sub

      Этот метод демонстрирует применение методов Show и Hide для отображения и скрытия формы Form2 при нажатии кнопки Command1.

      12. Двойным щелчком на кнопке Command2 создать обработчик события щелчка на кнопке и ввести для него код, приведенный в листинге 3.6.

Листинг 3.6

      Private Sub Command2_Click()

      Cls

      Form2.Z0rder vbBringToFront

      End Sub

      Команда Cls очищает поверхность формы Form1 от нарисованных на ней линий, а метод ZOrder выводит форму Form2 на передний план после выполнения этой команды. Без этого метода она становится невидимой, так как ее заслоняет форма Form1.

      13. Ввести еще один блок кода в этом же модуле, приведенный в листинге 3.7.

Листинг 3.7

      Private Sub Form_Load()

      DrawLine 1100, 1100, 9000, 18000, &HFF&

      DrawLine 1100, 1100, 18000, 10000, &HFF&

      DrawLine 1100, 1100, 18000, 18000, &HFF&

      End Sub

      При помощи этого кода в момент загрузки формы Form1 на ней будут нарисованы три линии красного цвета.

      14. В начале этого же блока следует объявить и проинициализировать переменную, которая будет хранить состояние формы. Делается это при помощи кода, приведенного в листинге 3.8.

Листинг 3.8

      Option Explicit

      Dim ShFrm2 As Boolear

      ShFrm2 = True

      15. Сохранить проект. В качестве целевого устройства нужно выбрать в списке значение Pocket PC 2002 Emulation, после чего следует выполнить команду Run ► Execute. На экран эмулятора будет выведена форма Form1 с нарисованными на ней линиями. После нажатия кнопки Показать на экран будет выведена форма Form2 с нарисованными на ней окружностью и квадратом, а надпись на кнопке изменится на Скрыть (рис. 3.21).

      Рис. 3.21. Программа FormMethods в работе/

      Форма Form2 будет перемещаться по экрану и изменять цвет в момент столкновения с границами экрана. Нажатие кнопки Очистить приведет к тому, что будут стерты линии с поверхности формы Form1. При работе с приложением стоит несколько раз скрыть и снова отобразить форму Form2. Это покажет, что форма не уничтожается при скрытии и продолжает свое перемещение в невидимом состоянии.

      Упражнение 3.5

      Это упражнение демонстрирует, как работают события объекта Form.

      1. Создать новый проект с формой и сохранить его под именем FormEvents.

      2. Разместить на форме компоненты TextBox, ListBox и три кнопки CommandButton так, как это показано на рис. 3.22.

      Рис. 3.22. Размещение компонентов на форме.

      3. При помощи инспектора свойств нужно установить