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

4.Створення контекстної довідки

Контекстна довідка – це довідковий файл, у якому кожна тема довідки має унікальний ідентифікатор і номер. Цей номер дозволяє привласнювати різним елементам програми (вікнам, елементам керування й т.п.) конкретні види довідки. Що дозволяє в процесі роботи одержувати потрібну інформацію з використання конкретного елемента або виконання конкретної функції.

Для створення такого виду довідки можна використовувати створений раніше проект, у якому потрібно виконати наступні дії:

  • кожному розділу довідки потрібно привласнити унікальні імена. Для цього на вкладці Проект клацніть на кнопці Інформація керування HTMLHelp API. У вікні на вкладці Псевдонім за допомогою кнопки Додати привласніть кожному розділу довідки ім'я. Для цього вводять довільне ім'я латинськими буквами й указують зв'язаний HTML документ;

  • створюємо заголовний файл контексту. Для цього створіть новий файл за допомогою кнопки Створити, виберіть тип Текст. Даний файл має певну структуру, у якому кожний рядок оформляється так:

#define ім'я_розділу номер

 

Приклад.

 

#define Razdel1 1

#define Razdel2 2

#define Razdel3 3

#define Razdel4 4

#define Razdel5 5

 

Збережіть файл в одну текуку із проектом із розширенням .H;

  • Додайте створений заголовний файл у проект. Для цього клацніть на кнопці Інформація керування HTMLHelp API. На вкладці Карта клацніть на кнопці Ім'я файлу й укажіть створений файл;

  • Відкомпілюйте проект заново.

Для перевірки роботи створених контекстів виконайте команду Перевірка – HTMLHelp API. Укажіть відкомпільований файл довідки, у списку Команда виберіть рядок HH_HELP_CONTEXT, уведіть номер довідки й клацніть на кнопці Тест. Якщо все зроблене правильно, то запуститься файл допомоги з відкритим відповідним розділом.  

 

5.Інтеграція довідкового файлу в додаток

Спочатку для проекту потрібно задати файл допомоги. Скопіюйте файл довідки в теку із проектом. У середовищі Delphi виконайте команду Project-Options. На закладці Application у полі HelpFile вкажіть ім'я файлу допомоги, вилучивши шлях до нього.

За замовчуванням Delphi 7 не підтримує роботу з файлами допомоги у форматі *.chm. Для роботи з такими файлами потрібно використовувати один із зовнішніх модулів, наприклад модуль stoHTMLHelp.pas. Даний модуль потрібно скопіювати у папку Lib, яка знаходиться в папці із установленим середовищем Delphi.

У коді програми потрібно підключити модуль stohtmlhelp. Пслі цього можна запускати як основний файл довідки, так і окремі її розділи по контексному номеру.

Виклик основного файлу довідки

Для виклику файлу довідки використовуйте команду виду:

 

application.helpcommand(help_contents, 0);

 

Дану команду можна написати для пункт меню, який відповідає за виклик системи допомоги.

 

Виклик роздягнула довідки по контекстному номеру

Для виклику конкретного розділу можна використовувати команду виду:

 

 application.helpcontext(номер_розділу);

 

Указуючи потрібний номер розділу, довідковий файл буде автоматично відкриватися на відповідному розділі.

Кожна форма, як і компоненти на ній мають властивість HelpContext, у якій можна вказати контекстний номер потрібного розділу. Це дозволяє при проектуванні явно привласнити потрібні розділи довідки формам або компонентам. У цьому випадку при виклику довідки потрібно вказати не конкретний номер, а значення властивості HelpContext активного елемента на формі. У цьому випадку команда виклику змінить свій вид:

 

 application.helpcontext(screen.activecontrol.helpcontext);

 

Даний код можна писати для події натискання на клавішу F1. Наприклад, написати виклик контекстної довідки для форми.

 

Спочатку включимо обробку формою натискань клавіш. Для цього для форми встановимо властивість KeyPreview=true. У події форми OnKeyDown напишемо код:

 

//якщо натиснута клавіша f1

if key=vk_f1 then

    application.helpcontext(screen.activecontrol.helpcontext);

 

Питання для самоконтролю

1. Які системи допомоги ви знаєте? Дайте їхню характеристику.

2. Які види довідок вам відомі. У чому їх переваги й недоліки?

3. Опишіть принцип створення звичайної довідки у форматі *.chm (додавання файлів, створення змісту, настроювання вікна й компіляція).

4. Опишіть процедуру створення контекстної довідки?

5. Як перевірити роботу контекстної довідки у вікні HTML Help WorkShop?

6. Опишіть принцип впровадження створеного довідкового файлу в проект Delphi?

7. Як використовувати номери контекстних розділів довідки в проект Delphi?

Практична робота №18

Тема: Розробка систем допомоги та підказок у програмах.

Мета: Придбання практичніх навичок при створенні довідникових систем при розробці програмного продукту

Перелік питань, що розглядаються на практичному занятті:

  1. Створення простого програмного продукту.

  2. Створення форми з довідкою про програму.

  3. Створення форми з відображенням інструкції по роботі з програмою (інструкція знакодиться повинна у файлі. (файли різних форматів)).

  4. Створення контекстної підказки у програмах.

Хід роботи:

  1. Уважно ознайомитися з матеріалалом лекції №17.

  2. Створити віконній додаток за завданням викладача. Додаток повинен містити пункт меню «О программе», «Инструкция».

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

  4. Створити 2 файла. Перший у текстовому форматі, другий у форматі сом серверів (див лекції 13,14,15,16). Файли повинні містити інструкцію по роботі з програмою.

  5. Додати у програму форму на яку буде віводитися інструкція.

  6. Додати на головну форму компонент ToolTip

  7. Створити динамчні підказки у програмі по наведенні на інтерфейсні елементи програми.

Питання для самоконтролю

1. Які системи допомоги ви знаєте? Дайте їхню характеристику.

2. Які види довідок вам відомі. У чому їх переваги й недоліки?

3. Опишіть принцип створення звичайної довідки у форматі *.chm (додавання файлів, створення змісту, настроювання вікна й компіляція).

4. Опишіть процедуру створення контекстної довідки?

5. Як перевірити роботу контекстної довідки у вікні HTML Help WorkShop?

6. Опишіть принцип впровадження створеного довідкового файлу в проект?

7. Як використовувати номери контекстних розділів довідки в проект?

Лекція №19

Тема: Патерни їх призначення та види патернів.

Мета:

Перелік питань, що розглядаються на лекції:

  1. Визначення поняття патерн.

  2. Класифікація та призначення патернів.

Патерни - шаблони проектування програмного забезпечення (англ. software design patterns) — ефективні способи вирішення задач проектування програмного забезпечення. Шаблон не є закінченим зразком, який можна безпосередньо транслювати в програмний код. Об'єктно-орієнтований шаблон найчастіше є зразком вирішення проблеми і відображає відношення між класами та об'єктами, без вказівки на те, як буде зрештою реалізоване це відношення.

Патерни поділяють на:

  • Твірні

  • Структурні

  • Шаблони поведінки

Твірні патерни - шаблони, що породжують (англ. Creational patterns) — це шаблони проектування, що абстрагують процес побудови об'єктів. Вони допоможуть зробити систему незалежною від способу створення, композиції та представлення її об'єктів.

Шаблон, який породжує класи, використовує спадкування, щоб варіювати створюваний клас, а шаблон, що створює об'єкти, делегує інстанціювання іншому об'єктові.

Ці шаблони важливі, коли система більше залежить від композиції об'єктів, ніж від спадкування класів.

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

Таким чином, для створення об'єктів з конкретною поведінкою потрібно щось більше, ніж просте інстанціювання екземпляру класу.

Шаблони, що породжують, інкапсулюють знання про конкретні класи, які застосовуються у системі та приховують деталі того, як ці класи створюються і стикуються між собою.

Єдина інформація про об'єкти, що відома системі — їхні інтерфейси.

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