Если пользователь нажал кнопку «Нет», то выводится диалоговое окно с уточнением его действий и кнопками «Да», «Нет» и «Отмена». При нажатии кнопки «Да» выводится диалоговое окно с текстом «Ну наконец-то!» и завершается работа приложения. При нажатии других кнопок выводится диалоговое окно с текстом «Ха-ха!» (рис. 28).
Рис. 28. Внешний вид диалоговых окон
Для реализации данного проекта необходимо использовать различные виды диалоговых окон (прил. 1).
Напишем процедуру обработки события Click для кнопки.
Private Sub CommandButton1_Click()
Dim N As String ‘переменная для имени пользователя ‘вывод предупреждающего диалогового окна
MsgBox “Нажмите кнопку!”, vbExclamation, “Окно”
‘вывод обычного диалогового окна с кнопками «Да» и «Нет» ‘и проверка нажатия кнопки «Да»
If MsgBox(“Начинать?”, vbYesNo) = vbYes Then
N = InputBox(“Введите Ваше имя”, “Пример окна ввода”) If N <> “” Then ‘если имя введено
‘выводим информационное окно с приветствием
MsgBox “Привет, ” & N & “!”, vbInformation, “Сообщение” Else
‘иначе выводим предупреждающее окно
MsgBox “Вы забыли ввести имя!”, vbExclamation, “Пример”
End If |
|
Else |
‘иначе (нажата не кнопка «Да») |
‘выводим диалоговое окно с кнопками «Да», «Нет»,
46
‘«Отмена» и проверяем нажатие кнопки «Да»
If MsgBox(“Точно?”, vbYesNoCancel) = vbYes Then MsgBox (“Ну наконец-то!”)
End
Else ‘иначе (нажата кнопка «Нет» или «Отмена») MsgBox (“Ха-ха!”)
End If
End If
End Sub
Проект содержит три формы. На первой (главной) форме расположены метка и семь кнопок, образующих главное меню (видны только три основных пункта меню). Структура главного меню: первый пункт «Дата/Время», включающий подпункты «Дата» и «Время» для вывода в метку текущей даты или времени; второй пункт меню «Формат», включающий подпункты «Шрифт» и «Размер» для изменения шрифта и размера шрифта в метке; третий пункт меню «Выход» для завершения работы приложения.
На второй форме расположен список с названиями шрифтов, кнопки «ОК» и «Отмена», метка с пояснительным текстом. На третьей форме расположено поле со списком для выбора размера шрифта, кнопки «ОК» и «Отмена», метка с пояснительным текстом.
Внешний вид главной формы на разных стадиях выполнения проекта показан на рис. 29, внешний вид вспомогательных форм показан на рис. 30.
Рис. 29. Внешний вид формы на разных стадиях выполнения проекта
47
Рис. 30. Внешний вид вспомогательных форм
Напишем процедуры для кнопок на главной форме.
Private Sub CommandButton1_Click() |
‘кнопка «Дата/Время» |
CommandButton2.Visible = True |
‘показываем кнопку «Дата» |
CommandButton3.Visible = True |
‘показываем кнопку «Время» |
End Sub
_______________________________________________________________________________________________________
Private Sub CommandButton2_Click() ‘кнопка «Дата»
Label1.Caption = Date ‘выводим в метку текущую дату
CommandButton2.Visible = False ‘скрываем пункты меню CommandButton3.Visible = False
End Sub
_______________________________________________________________________________________________________
Private Sub CommandButton3_Click() |
‘кнопка «Время» |
|
Label1.Caption = Time |
‘выводим в метку текущее время |
|
CommandButton2.Visible = False |
‘скрываем пункты меню |
|
CommandButton3.Visible = False |
|
|
End Sub
_______________________________________________________________________________________________________
Private Sub CommandButton4_Click() ‘кнопка «Формат» CommandButton5.Visible = True ‘показываем кнопку «Шрифт» CommandButton6.Visible = True ‘показываем кнопку «Размер»
End Sub
_______________________________________________________________________________________________________
Private Sub CommandButton5_Click() |
‘кнопка «Шрифт» |
|
CommandButton5.Visible = False |
‘скрываем пункты меню |
|
CommandButton6.Visible = False |
|
|
UserForm2.Show |
‘выводим на экран вторую форму |
|
|
48 |
|
End Sub
_______________________________________________________________________________________________________
Private Sub CommandButton6_Click() |
‘кнопка «Размер» |
|
CommandButton5.Visible = False |
‘скрываем пункты меню |
|
CommandButton6.Visible = False |
|
|
UserForm3.Show |
‘выводим на экран третью форму |
|
End Sub
_______________________________________________________________________________________________________
Private Sub CommandButton7_Click() |
‘кнопка «Выход» |
End |
|
End Sub |
|
Напишем процедуры для кнопок на второй форме.
Private Sub UserForm_Activate() ‘формируем список шрифтов ListBox1.AddItem “Arial”
ListBox1.AddItem “Courier” ListBox1.AddItem “Comic Sans MS” ListBox1.AddItem “Tahoma” ListBox1.AddItem “Times New Roman”
End Sub
_______________________________________________________________________________________________________
Private Sub CommandButton1_Click() ‘кнопка «ОК»
‘меняем шрифт в метке на главной форме
UserForm1.Label1.Font.Name = ListBox1.Text
UserForm2.Hide |
‘скрываем вторую форму |
End Sub |
|
_______________________________________________________________________________________________________
Private Sub CommandButton2_Click() ‘кнопка «Отмена»
UserForm2.Hide
End Sub
Напишем процедуры для кнопок на третьей форме.
Private Sub UserForm_Activate() Dim i As Byte
For i = 10 To 30 Step 2 ‘заполняем список числами
ComboBox1.AddItem i Next i
End Sub
49
_______________________________________________________________________________________________________
Private Sub CommandButton1_Click() ‘кнопка «ОК»
‘меняем размер шрифта в метке на главной форме
UserForm1.Label1.Font.Size = ComboBox1.Text
UserForm3.Hide |
‘скрываем третью форму |
End Sub |
|
_______________________________________________________________________________________________________
Private Sub CommandButton2_Click() ‘кнопка «Отмена»
UserForm3.Hide
End Sub
На форме расположены метка без текста и две кнопки: «Ввод» и «Закрыть». При нажатии на кнопку «Ввод» у пользователя запрашивается имя, а затем в метку выводится текст вида «Hello, ИМЯ!». При нажатии на кнопку «Закрыть» приложение завершает работу.
Внешний вид формы после
Рис. 31. Внешний вид формы нажатия кнопки «Ввод»
показан на рис. 31.
На форме расположены метка с текстом «Введите свое имя», текстовое поле для ввода имени и две кнопки: «Ввод» и «Выход». Пользователь вводит в поле свое имя и нажимает на кнопку «Ввод». Появляется диалоговое окно с приветствием вида «Hello, ИМЯ!». При нажатии на кнопку «Выход» приложение завершает работу. Внешний вид формы показан на рис. 32.
50