Стандартні діалогові вікна

Для обміну інформацією з користувачем у 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 видає вікно повідомлення з рядком типа «Привіт, Стів!» (зрозуміло, у вашому випадку буде виведене ім’я, задане у вікно введення).