Стандартні діалогові вікна
Для обміну інформацією з користувачем у Windows використовуються спеціальні форми, що називаються діалоговими вікнами. Вони привертають увагу користувача і забезпечують його реакцію (що відбувається!?). У цій лабораторній роботі ви дізнаєтеся, як користуватися діалоговими вікнами, вбудованими в Visual Basic, навчитися створювати і використовувати власні діалогові вікна.
У проектах Visual Basic часто зустрічаються два різновиди діалогових вікон: вікно повідомлень і вікно введення. Вікно повідомлення (MsgBox) виводить найпростіше повідомлення для користувача, а вікно введення (InputBox), використовується служить для введення інформації.
Вікно повідомлення. Оператор для створення вікна повідомлення виглядає так (у скороченому варіанті):
MsgBox (повідомлення, атрибути, заголовок),
де повідомлення – текст, що відображається у діалоговому вікні; заголовок – рядок у заголовку вікна; параметр атрибути визначає особливості вікна – а саме різні кнопки і значки, які відображаються в ньому. Нижче перераховані значення цього параметра і константи, що використовуються для визначення вікна повідомлення.
Константа | Значення | Стиль |
vbOKOnly | Відображається тільки кнопка ОК | |
vbOKCancel | Відображається кнопки ОК і Cancel | |
vbAbortRetryIgnore | Відображається кнопки Abort, Retry і Ignore | |
vbYesNoCancel | Відображається кнопки Yes, No і Cancel | |
vbYesNo | Відображається кнопки Yes і No | |
vbRetryCancel | Відображається кнопки Retry і Cancel | |
vbCritical | Відображається значок критичного повідомлення | |
vbQuestion | Відображається знак питання(попередження) | |
vbExclamation | Відображається знак оклику (попе-редження) | |
vblnformation | Відображається значок інформаційного повідомлення |
Значення констант можна складати, щоб досягти бажаного результату. Наприклад, щоб у вікні повідомлення були присутні кнопки ОК і Cancel, а також значок інформаційного повідомлення слід скористатися будь-яким з приведених варіантів:
DlgDef = vbOKCancel
DlgDef = 1 + 64
Потім значення змінної DlgDef використовується при виклику MsgBox.
Синтаксис функції MsgBox практично співпадає з синтаксисом однойменного оператора:
Dim rс As Integer
rc= MsgВох(повідомлення, атрибути, заголовок)
Вікно введення, як і вікно повідомлення, може викликатися оператором або функцією. Скорочений синтаксис функції виглядає так:
Dim rс As String
rc = InputВох(повідомлення, заголовок, за замовчуванням)
Цього разу параметр атрибути відсутній, проте з’являється додатковий параметр за замовчуванням. В ньому можна задати рядок, який за замовчуванням знаходитиметься в текстовому полі. Коли користувач натискає кнопку ОК, вміст цього поля привласнюється змінній (у нашому випадку rс). Якщо користувач натиснув кнопку Cancel, повертається рядок нульової довжини. Зверніть увагу — функція InputBox повертає рядок, а функція MsgBox — значення цілого типу.
Наступний приклад показує, як користуватися функцією InputBox:
Private Sub Command1_Click()
Dim rс As String
rс = InputBox("Введіть ім’я:")
MsgBox "Привіт, " & rс & "!"
End Sub
Запустити програму командою Run- Start. Натиснути кнопку, щоб викликати діалогове вікно InputBox. Ввести в текстовому полі своє ім’я і натиснути кнопку ОК. Цей маленький приклад у загальних рисах показує, як працюють діалогові вікна MsgBox і InputBox. Якщо все зроблено правильно, у вікні введення вам буде запропоновано ввести ім’я, після чого Visual Basic видає вікно повідомлення з рядком типа «Привіт, Стів!» (зрозуміло, у вашому випадку буде виведене ім’я, задане у вікно введення).