Размер шрифта
-
+

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

Листинг 3.3

>Private Sub Timer1_Timer()

>i=i+a

>j=j+b

>If i > 1600 Then a = – a: BackColor = &HFF&:

>DrawCircle 500, 500, 400, &HFF00FF:

>DrawLine 1100, 1100, 1800, 1800, &HFF00FF, vbLineBoxFill

>If j > 2500 Then b = – b: BackColor = &HFFFF&:

>DrawCircle 500, 500, 400, &HFF00FF:

>DrawLine 1100, 1100, 1800, 1800, &HFF00FF, vbLineBoxFill

>If i < 0 Then a = – a: BackColor = &HFF00&:

>DrawCircle 500, 500, 400, &HFF00FF:

>DrawLine 1100, 1100, 1800, 1800, &HFF00FF, vbLineBoxFill

>If j < 0 Then b = – b: BackColor = &HFF0000:

>DrawCircle 500, 500, 400, &HFF00FF:

>DrawLine 1100, 1100, 1800, 1800, &HFF00FF, vbLineBoxFill

>Move i, j

>End Sub


Этот код демонстрирует применение методов 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.

Страница 37