Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Mетодичка_VB_часть2.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.17 Mб
Скачать

1.1. Створення простого вікна повідомлення

Для створення простого вікна повідомлення застосовується оператор (зарезервоване слово) MsgBox, за ним слідує текст, який відображатиметься у вікні повідомлення.

Синтаксис:

MsgBox “Текст”, vbOkOnly, “Заголовок”

де Текст – повідомлення у вікні повідомлення;

vbOkOnly – константа дозволяє відображати одну кнопку <Ok> у вікні повідомлення, може бути пропущена по замовченню, тобто:

MsgBox “Текст”, , “Заголовок”

де Заголовок – (третій аргумент) текст в рядку заголовка (назва) вікна повідомлення, може бути відсутнім, тоді заголовок при застосуванні у Microsoft Excel, за умовчанням - «Microsoft Excel».

Приклад 1:

  1. MsgBoxПозитивне значення не знайдено!”, vbOkOnly, “Результат пошуку

або

MsgBoxПозитивне значення не знайдено!”, , “Результат пошуку

Отримане вікно повідомлення показано на рисунку 9.1.

  1. MsgBox “Позитивне значення не знайдено!”

Отримане вікно повідомлення показано на рисунку 9.2.

Рисунок 9.1. Просте вікно повідомлення з заголовком “Результат пошуку (Приклад 1.a)

Рисунок 9.2. Просте вікно повідомлення при відсутній назві заголовку (Приклад 1.b)

Якщо у вікні повідомлень потрібно відображати числа, використовуються функції Str() або Format(), що дозволяють перетворити число в символьну форму. У цьому випадку оператор MsgBox використовується для відображення результатів обчислення:

Приклад 2:

MsgBox “Сума: ” & Str(Summa) , vbOkOnly, “Результат ”

або

MsgBox “Сума: ” & Str(Summa) , , “Результат ”

Отримане вікно повідомлення показано на рисунку 9.3,a.

Приклад 3:

MsgBox “Сума: ” & Format(Summa,”0.00”) , vbOkOnly, “Результат ”

або

MsgBox “Сума: ” & Format(Summa,”0.00”) , , “Результат ”

Отримане вікно повідомлення показано на рисунку 9.3,b.

a)

b)

Рисунок 9.3. Просте вікно повідомлення з відображенням результатів обчислення

Функція Str() використовується для перетворення числа числової змінної (числа) в символьну змінну. Результат перетворення об'єднується з текстом і відображується оператор MsgBox у вигляді вікна повідомлення.

1.2. Додавання командних кнопок у вікно повідомлення для створення діалогового вікна

У вікно повідомлення можна додати декілька командних кнопок, що дозволить розширити його можливості і перетворити його в діалогове вікно. Можна додати командні кнопки, використавши необов'язкові аргументи функції MsgBox(). Ці додаткові кнопки дозволяють користувачеві вибрати напрям дій або варіант відповіді на просте питання.

Синтаксис:

ім'я_змінної = MsgBox( Prompt, buttons , title)

де Prompt – текст, повідомлення у вікні повідомлення; buttons – константа, дозволяє відображати стандартну комбінацію кнопок в діалоговому вікні + вказати командну кнопку за умовчанням + вказати піктограму + оголосити тип діалогового вікна, тобто buttons =к1+к2+к3+к4 (к1,к2,к3,к4 - константи VB); title – текст в рядку заголовка вікна діалогу (Заголовок).

Список констант (код та ім’я), приведені в таблиці 9.1.

Додаткові коди дозволяють задати командну кнопку за умовчанням, вказати піктограму і оголосити діалогове вікно модальним.

Для використання кодів наданих в таблиці:

  1. спочатку виберіть командну кнопку або кнопки (к1), які необхідно відображати. Потім, якщо вибрано більш за одну командну кнопку, слід визначити, яка з них буде активною за умовчанням (к2). Командна кнопка, активна за умовчанням, вважається та, що повинна виконатися при натисканні користувачем після відображення діалогового вікна клавіші Enter. Коди (к2), приведені в частини "Коди активності за умовчанням" таблиці 9.1 дозволяють вказати, яка з командних кнопок (перша, друга або третя) буде активною за умовчанням. Командні кнопки поміщаються в діалогове вікно в тому ж порядку, в якому вони вказані в частині "Коди командних кнопок" (константи к1) таблиці 9.1;

  2. якщо хочете додати в діалогове вікно піктограму, вкажіть відповідну константу (к3) з частини "Коди піктограм" таблиці 9.1;

  3. можна вказати тип діалогового вікна (к4). Якщо діалогове вікно не модальне, то користувач може перемкнутися на інше вікно, продовживши таким чином роботу з програмою без закриття діалогового вікна. Якщо ж діалогове вікно задане як модальне, то користувач повинен закрити його (завершити з ним роботу), перш ніж продовжувати роботу з даною програмою. Існують два типи модальних діалогових вікон — програмні модальні і системні модальні.

Користувач повинен закрити програмне модальне діалогове вікно, перш ніж продовжити роботу з програмою, що відображує це вікно; хоча в цьому випадку дозволяється перемкнутися на іншу програму, не закривши дане діалогове вікно. Системне модальне діалогове вікно вимагає, аби користувач закрив його, перш ніж робити що-небудь ще;

  1. і нарешті, складаються всі коди разом, buttons =к1+к2+к3+к4 (для всіх командних кнопок і опцій), а потім використаємо цю суму як аргумент функції MsgBox() для створення діалогового вікна.

Таблиця 9.1. Коди завдання командних кнопок і піктограм у функції MsgBox()

Код

Константа

Опис

Коди командних кнопок

0

vbOKOnly

OK

1

vbOKCancel

OK і Cancel

2

vbAbortRetryIgnore

Abort, Retry і Ignore

3

vbYesNoCancel

Yes, No і Cancel

4

vbYesNo

Yes і No

5

vb Retry Cancel

Retry і Cancel

Коди активності за умовчанням

0

vbDefaultButton1

Активна перша

25

vbDefaultButton2

Активна друга

51

vbDefaultButton3

Активна третя

Коди піктограм

16

vbCritical

Важливе повідомлення

32

vbQuestion

Попереджувальний запит

48

vbExclamation

Попереджувальне повідомлення

64

vbІnformation

Інформаційне повідомлення

Коди модальності вікна

0

vbApplicationModal

Програмне модальне

4096

vbSystemModal

Системне модальне

Приклад.

Створимо діалогове вікно, що включає командні кнопки ТАК (ДА) і НІ (НЕТ) (друга кнопка буде активною за умовчанням), включити в діалогове вікно піктограму «Увага» ( ) і зробити це вікно програмним модальним, то для створення коду необхідно використовувати наступний набір вбудованих констант:

Code = vbYesNo + vbDefaultButton2 + vbExclamation + vbAppliсationModal

або

Code = 4+ 256 + 48 + 0 = 308

або

Code = 308

Проте, щоб зробити код очевиднішим, слід використовувати пойменовані константи, а не числа.

Приклад 4. Можна використовувати, наприклад, будь-який з наступних операторів MsgBox():

Code = vbYesNo + vbDefaultButton2 + vbExclamation + vbAppliсationModal

MsgBох( prompt:="Bи дійсно хочете це зробити?", buttons:=Code)

або

MsgBох( "Ви, дійсно хочете це зробити?", Code)

Отримане вікно діалогу/повідомлення показано на рисунку 9.4.

Рисунок 9.4. Вікно діалогу (Приклад 4)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]