Кафедра: Автоматика та Інформаційні Технології
ОРГАНІЗАЦІЯ ІНТЕРФЕЙСУ КОРИСТУВАЧА
Зміст
1. Визначення користувальницького інтерфейсу
2. Класифікація інтерфейсів
3. Текстовий режим роботи відеоадаптера
4. Функції текстового режиму
4.1 Загальні параметри
4.2 Управління курсором
4.3 Управління атрибутами тексту
4.4 Очищення тексту
4.5 Копіювання тексту
5. Реалізація користувальницького інтерфейсу в BORLAND C + +
5.1 Загальні принципи
5.2 Консольний інтерфейс
5.3 Просте меню
5.4 Меню з переміщенням курсора
5.5 Введення рядка з редагуванням
6. Практичні завдання
6.1 Контрастність атрибутів
6.2 Розробка інтерфейсу
7. Лабораторні завдання
7.1 Рішення квадратного рівняння
7.2 Побудова графіка довільної функції
8. Додаткові завдання
8.1 Елемент керування В«СписокВ»
8.2 Введення рядка з редагуванням і прокруткою
Бібліографічний список
1. Визначення користувальницького інтерфейсу
На ранніх етапах розвитку обчислювальної техніки користувальницький інтерфейс розглядався як засіб спілкування людини з операційною системою і був досить примітивним. В основному він дозволяв запустити завдання на виконання, пов'язати з ним конкретні дані і виконати деякі процедури обслуговування обчислювальної установки.
З часом у міру вдосконалення апаратних коштів з'явилася можливість створення інтерактивного програмного забезпечення, використовує спеціальні інтерфейси користувача. В даний час основною проблемою є розробка інтерактивних інтерфейсів до складних програмним продуктам, розрахованим використання непрофесійними користувачами. В Останніми роками були сформульовані основні концепції побудови таких користувальницьких інтерфейсів і запропоновано декілька методик їх створення.
Інтерфейс користувача являє собою сукупність програмних і апаратних засобів, що забезпечують взаємодію користувача з комп'ютером. Основу такої взаємодії складають діалоги. Під діалогом в даному випадку розуміють регламентований обмін інформацією між людиною і комп'ютером, спрямований на вирішення конкретного завдання.
Обмін інформацією здійснюється передачею повідомлень і керуючих сигналів. Повідомлення - порція інформації, що бере участь в діалоговому обміні. За напрямом передачі інформації розрізняють:
- вхідні повідомлення, які генеруються людиною за допомогою засобів вводу (клавіатури, миші і т.п.);
- вихідні повідомлення, які генеруються комп'ютером у вигляді текстів, звукових сигналів і/або зображень і виводяться користувачеві на екран монітора або інші пристрої виведення інформації.
В основному користувач генерує повідомлення наступних типів: запит інформації, запит допомоги, запит операції або функції, введення або зміна інформації і т.д. У відповідь він отримує: підказки чи довідки, інформаційні повідомлення, які не потребують відповіді, накази, що вимагають дій, повідомлення про помилки, які потребують відповідних діях, і т.д.
2. Класифікація інтерфейсів
За аналогією з процедурних і об'єктним підходом до програмування розрізняють процедурно-орієнтований та об'єктно-орієнтований підходи до розробки інтерфейсів (див. рис. 1).
Рис.1. Типи користувацьких інтерфейсів
Процедурно-орієнтовані інтерфейси надають користувачеві можливість виконання деякого набору дій, для яких можуть вводитися відповідні вихідні дані. Вся робота з програмою зводиться до вибору дії, яке треба виконати (якщо такий вибір надається), введенню даних (при необхідності) та обробці отриманих результатів.
Об'єктно-орієнтовані інтерфейси використовують дещо іншу модель взаємодії з користувачем, орієнтовану на маніпулювання об'єктами предметної області. Ми не будемо детально зупинятися на об'єктно-орієнтованих користувацьких інтерфейсах, оскільки для вирішення навчальних завдань достатньо процедурного підходу, значно більш простого в реалізації. В якості прикладу об'єктно-орієнтованого інтерфейсу можна привести програму В«ПровідникВ» Windows. Об'єктами предметної області в цьому випадку є файли і папки. Виконання операції може виглядати так: користувач В«береВ» файл (точніше, об'єкт інтерфейсу, відповідний файлу) і В«перетягуєВ» його в іншу папку, ініціюючи таким чином переміщення В«фізичногоВ» файлу на диску.
Процедурно-орієнтовані інтерфейси, в свою чергу, можна розділити на кілька підтипів: консольні, меню і з вільною навігацією.
консольні називають інтерфейс, який організовує взаємодію з користувачем на основі послідовного введення і виведення інформації в текстовому режимі за принципом В«питання-відповідьВ». Зазвичай такий інтерфейс реалізує конкретний сценарій роботи, наприклад: введення даних - рішення задачі - висновок результату (рис. 2, а). Єдине відхилення від послідовного процесу, яке забезпечується даним інтерфейсом, полягає в організації циклу для обробки декількох наборів даних (рис. 2, б). Подібні інтерфейси в даний час використовують тільки в процесі навчання програмування або в тих випадках, коли вся програма реалізує одну функцію, наприклад, в деяких системних утилітах.
а) б)
Рис.2. Структура програми з консольним інтерфейсом
Як приклад програми з консольним інтерфейсом розглянемо програму вирішення квадратного рівняння (див. рис. 3).
Рис.3. Зовнішній вигляд консольного інтерфейсу
Дана програма послідовно запитує коефіцієнти рівняння, після чого виробляє обчислення, виводить результат і пропонує повторити введення даних. Ніяких засобів переходу до попереднього кроку не існує, і якщо користувач помилився при введенні параметрів, то йому доведеться дійти до рішення, а потім вводити параметри ще раз.
Інтерфейс-меню, на відміну від консольного інтерфейсу, дозволяє користувачеві вибирати необхідні операції зі спеціального списку, що виводиться йому програмою. У цьому типі інтерфейсів послідовність дій вибирається самим користувачем. Розрізняють однорівневі та ієрархічні меню. Перші використовують для порівняно простих випадків, коли варіантів небагато (не більше 5-7), і вони включають операції одного типу, наприклад, Створити, Відкрити, Закрити і т.п. Другі застосовуються при великій кількості варіантів або їх очевидних відмінностях, наприклад, операції з файлами та операції з даними, що зберігаються в цих файлах. На рис. 4 показана типова структура алгоритму програми, організуючою однорівневе меню.
Алгоритм програми з багаторівневим меню зазвичай будується за рівнями, причому вибір команди на кожному рівні здійснюється так ж, як для однорівневого меню.
Інтерфейс-меню припускає, що програма в будь момент часу знаходиться або в стані обслуговування меню (очікування вибору зі боку користувача), або в стані виконання операції. Користувач, як правило, змушений чекати, поки виконується вибране ним дію.
Рис.4. Структура програми з інтерфейсом-меню
Меню може бути побудовано різними способами. Найпростіший варіант реалізації меню - виведення списку пунктів і пропозицію ввести номер пункту з цього списку (див. рис. 5, а). Більш складний варіант - список, по якому можна переміщатися за допомогою клавіш (Зазвичай клавіші управління курсором). Переваги цього способу в тому, що він зручніше, привабливіше виглядає, не вимагає від користувача співвіднесення тексту меню з номером пункту і зменшує ймовірність помилки при виборі за рахунок того, що поточний пункт меню В«підсвічуєВ». Зовнішній вигляд такого меню приведений на рис. 5, б.
а) б)
Рис.5. Зовнішній вигляд інтерфейсу-меню
На відміну від інтерфейсу-меню...