Занятие 5 (17 марта) Часть 2 (методическая). Работа с изображениями и анимацией Работа с таймером Часть 3 (практикум). Упражнения 1–3 Самостоятельная работа (задания 1–2) Упражнение 1 Создать форму с двумя текстовыми полями, двумя командными кнопками, двумя метками и одним окном рисунка со свойством PictureSizeMode = 3 (zoom). У первой кнопки свойство Caption – "Загрузить картинку", у второй "Сохранить картинку". У первой метки свойство Caption – "Введите имя файла с картинкой", у второй " Введите имя файла для сохранения картинки". Загружаться картинка будет из файла, имя которого задается в первом текстовом поле, сохраняться – в файл, имя которого задается во втором текстовом поле. Код 1 Private Sub CommandButton1_Click() If TextBox1.Text = "" Then Label1.ForeColor = vbRed End If Image1.Picture = LoadPicture(TextBox1.Text) 'Картинка из файла, заданного в 1-м поле, загружается в объект Image End Sub Private Sub CommandButton2_Click() If TextBox2.Text = "" Then Label2.ForeColor = vbRed Else SavePicture Image1.Picture, TextBox2.Text 'Картинка из объекта Image загружается в файл, заданный во 2-м поле End If End Sub Упражнение 2 Создать форму, на которой разместить кнопку и текстовое поле. При нажатии на кнопку текстовое поле будет сдвигаться на 10 пикселей (попробуйте самостоятельно проделать это с другим объектом). Код 2 Private Sub CommandButton3_Click() TextBox3.Left = TextBox3.Left + 10 'текстовое поле при щелчке будет сдвигаться на десять пикселей (вместо текстового поля можно указать любой другой объект). End Sub Упражнение 3 "Светофор" (работа с таймером) На форме должны поочередно "зажигаться" красный, желтый и зеленый cигналы светофора, причем желтый должен включаться в конце работы красного, а зеленый перед окончанием работы должен несколько раз мигнуть. Создать форму, на которой разместить: четыре метки с именами: o красный_свет, o желтый_свет, o зеленый_свет, o счетчик; три флажка: o красный_флажок, o желтый_флажок, o зеленый_флажок; две командных кнопки Старт и Стоп; Код 3 Private Sub красный_флажок_Click() If красный_флажок = True Then красный_свет.Enabled = True If красный_флажок = False Then красный_свет.Enabled = False End Sub Private Sub желтый_флажок_Click() If желтый_флажок = True Then желтый_свет.Enabled = True If желтый_флажок = False Then желтый_свет.Enabled = False End Sub Private Sub зеленый_флажок_Click() If зеленый_флажок = True Then зеленый_свет.Enabled = True If зеленый_флажок = False Then зеленый_свет.Enabled = False End Sub Private Sub Старт_Click() включен = True счетчик = "" красный_флажок = False желтый_флажок = False зеленый_флажок = False зеленый_свет.Enabled = False желтый_свет.Enabled = False красный_свет.Enabled = False x=0 Do Dim PauseTime, Start PauseTime = 0.5 ' установка временного интервала в 1 сек. Start = Timer ' установка начального времени Do While Timer < Start + PauseTime DoEvents ' передача управления другим процессам на время паузы Loop x=x+1 счетчик = x 'Красный If x = 1 Then желтый_флажок = False If x = 1 Then красный_флажок = True If x = 2 Then красный_флажок = True If x = 3 Then красный_флажок = True If x = 4 Then красный_флажок = True If x = 5 Then красный_флажок = True If x = 6 Then красный_флажок = True If x = 7 Then красный_флажок = True If x = 8 Then красный_флажок = True If x = 9 Then красный_флажок = True If x = 10 Then красный_флажок = True If x = 17 Then красный_флажок = False 'Желтый If x = 11 Then желтый_флажок = True If x = 12 Then желтый_флажок = True If x = 13 Then желтый_флажок = True If x = 14 Then желтый_флажок = True If x = 15 Then желтый_флажок = True If x = 16 Then желтый_флажок = True If x = 17 Then желтый_флажок = False 'Зелёный If x = 17 Then зеленый_флажок = True If x = 18 Then зеленый_флажок = True If x = 19 Then зеленый_флажок = True If x = 20 Then зеленый_флажок = True If x = 21 Then зеленый_флажок = True If x = 22 Then зеленый_флажок = True If x = 23 Then зеленый_флажок = True If x = 24 Then зеленый_флажок = True If x = 25 Then зеленый_флажок = True If x = 26 Then зеленый_флажок = False If x = 27 Then зеленый_флажок = True If x = 28 Then зеленый_флажок = False If x = 29 Then зеленый_флажок = True If x = 30 Then зеленый_флажок = False If x = 31 Then зеленый_флажок = True If x = 32 Then зеленый_флажок = False 'Опять жёлтый If x = 33 Then желтый_флажок = True If x = 34 Then желтый_флажок = True If x = 35 Then желтый_флажок = True If x = 36 Then желтый_флажок = True If x = 37 Then желтый_флажок = True If x = 38 Then желтый_флажок = True If x = 39 Then желтый_флажок = True If x = 40 Then желтый_флажок = False If x = 40 Then x = 0 If x = 0 Then желтый_флажок = True Loop Until x = 41 выход: End Sub Private Sub Стоп_Click() UserForm7.hide End Sub