8.2. Використання вікон вводу

У програмах досить часто необхідно не просто одержати повідомлення, але і ввести у відповідь певні дані. Вікна повідомлень дозволяють тільки зробити висновок між пропонованими варіантами дій, але не дозволяє ввести додаткову інформацію. Для одержання такої можливості використовується інший вид діалогового вікна – вікно вводу. Воно викликається стандартною функцією InputBox. Функція повертає символьне значення – текст, уведений користувачем.

Вікно уведення відображає деяке повідомлення, дозволяє користувачу увести свою інформацію у вікні і підтвердити (або скасувати) це введення. Таким чином, вікно введення має поле тексту для введення інформації і дві кнопки: ОК і Отмена (рис 8.3). Можна також задавати в текстовому полі повідомлення за замовчуванням (рис 8.4). При натисканні користувачем кнопки ОК уведений текст присвоюється символьній змінній , що стоїть в лівій частині. При натисканні кнопки Отмена незалежно від того, уводив користувач чи текст ні, значенням змінної буде порожній рядок.

Формат використання функції InputBox

StrRetVal=InputBox(strMessage, strTitle, strDefaultTitle, xPos, yPos, strHelpFile, HelpContextID)

де

StrRetVal – змінна рядкового типу, який присвоюється введений текст;

StrMessage – рядковий вираз, що буде відображатися в області повідомлення вікна введення;

StrTittle – рядковий вираз, що буде відображатися в рядку заголовка вікна введення; параметр необов'язковий;

StrDefaultTittle – рядкова константа або змінна , значення якої буде відображатися у виді тексту, установленого за замовчуванням, у полі введення; параметр необов'язковий;

xPos – положення вікна введення по горизонталі у твипах; необов'язковий параметр;

yPos – положення вікна введення по вертикалі у твипах; необов'язковий параметр;

StrHelpFile – рядок, що відображає шлях довідкового файлу, у якому знаходиться додаткова інформація, що відноситься до теми повідомлення; параметр необов'язковий;

HelpContextID – константа контекстного посилання, що дає посилання на тему в довідковому файлі, що зазначений у попередньому параметрі; параметр необов'язковий, він використовується разом з попереднім параметром.

Приклад:

s$ = InputBox("Введення тексту ", "Просте вікно вводу")

s$ = InputBox("Введення тексту", "Вікно вводу з текстом за умовчанням", "Уведіть текст тут", 3000, 1000)

В другому прикладі задано також позиціонування вікна на екрані при його виведенні.

 

Подпись: Рис 8.3 Просте вікно вводу.

Вікна вводу можна зручно використовувати для введення даних. По-перше, такий спосіб організації введення привертає увагу користувача і не допускає помилок, пов’язаних з випадковим пропуском деяких вихідних даних. По-друге, у вікні вводу можна передбачити виведення додаткової інформації про дані, які потрібно ввести користувачеві. Однак при введенні великої кількості даних як правило потрібно передбачити окреме вікно для введення кожної величини. Введення групи значень в одному вікні ускладнює їх розділення в програмі і може бути джерелом помилок в результаті некоректних дій користувача.

 

Подпись: Рис 8.4 Вікно з підказкою.

Завдання 8.1. Створити програму, яка знаходить суму двох чисел. Введення даних та вивід результату здійснити за допомогою діалогових вікон.

У формі такого проекту доцільно передбачити лише одну кнопку, яка і задасть виконання програми. Вид форми на думку автора не являє складнощів для студента і далі не наводиться. Для виводу результату використане просте вікно виводу. Текст програми має такий вигляд:

Private Sub CommandButton1_Click()

Dim x%, y%, z%, s$

s$ = InputBox("Введіть перше число ", "Введення числа")

 = CInt(s$)

$ = InputBox("Введіть друге число ", "Введення числа")

 = CInt(s$)

 = x + y

$ = "Сума чисел рівна " + CStr(z)

sgBox s$, 0, "Результат"

End Sub

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 
25 26 27 28  Наверх ↑