- •Хмельницький національний університет проектування інтерфейсів користувача
- •Хмельницький 2009
- •Лабораторна робота №1
- •І. Теоретичні відомості
- •Для розробника вікно є сукупністю великої кількості елементів, які функціонують під управлінням додатку та операційної системи.
- •Створення вікон
- •Головна функція додатку
- •Структура тексту додатку
- •Допоміжні функції створення вікон
- •Приклади створення вікон
- •IV. Контрольні питання
- •Лабораторна робота №2
- •І. Теоретичні відомості
- •Статичний орган управління
- •Смуги прокрутки
- •IV. Контрольні питання
- •Лабораторна робота №3
- •І. Теоретичні відомості
- •Списки рядків
- •Комбінований список
- •IV. Контрольні питання
- •Лабораторна робота №4
- •І. Теоретичні відомості
- •Повідомлення wm_paint
- •Види контексту відображення
- •Встановлення атрибутів контексту відображення
- •Вивід тексту
- •Малювання геометричних фігур
- •IV. Контрольні питання
- •Лабораторна робота №5
- •І. Теоретичні відомості
- •Інструменти малювання
- •Відображення графічних об'єктів
- •IV. Контрольні питання
- •Лабораторна робота №6
- •І. Теоретичні відомості
- •Створення меню
- •Повідомлення від меню
- •Плаваюче меню
- •Акселератори
- •IV. Контрольні питання
- •Література
Статичний орган управління
Статичний орган управління – це вікно класу STATIC. Він не надсилає батьківському вікну повідомленняWM_COMMAND. Його використовують для оформлення зовнішнього вигляду батьківського вікна. Статичний орган управління має вигляд зафарбованого або незафарбованого прямокутника або рядків тексту в заданому прямокутнику (табл. 2.3).Статичні органи управління можуть використовуватись всередині діалогових панелей для відображення піктограм.
Таблиця 2.3. Список стилів статичного орагну управління
Стилі |
Опис |
1 |
2 |
SS_BLACK FRAME, SS_GRAY FRAME, SS_WHITE FRAME |
Прямокутна рамка системного кольору відповідно COLOR_WINDOWFRAME, COLOR_BACKGROUND, COLOR_WINDOW. Внутрішня область залишається незафарбованою. Текст заголовку вікна не використовують. Цей параметр функціїCreateWindowвказують якNULL |
SS_BLACK RECT, SS_GRAY RECT, SS_WHITE RECT |
Зафарбований прямокутник системного кольору відповідно COLOR_WINDOWFRAME COLOR_BACKGROUND COLOR_WINDOW. Текст заголовка вікна не використовують. Цей параметр функціїCreateWindowвказують якNULL |
SS_LEFT, SS_RIGHT, SS_CENTER |
В заданому прямокутнику вказаний текст виводить функція DrawText, відповідно вирівнюючи його по лівому, правому краю або центруючи і переносячи слова в наступний рядок. Частина тексту, яка не помістилась в прямокутник, не відображається. Символи табуляції заміняються пробілами |
SS_NO PREFIX |
Цей стиль доповнює інші стилі в тих випадках, коли необхідно відхилити спеціальну обробку символа &. Звичайно цей символ не виводиться статичними органами управління на екран, а наступний за ним символ зображується підкресленим (для зображення символу & його потрібно повторити двічі) |
SS_LEFT NOWORD WRAP |
Те ж, що й SS_LEFT, але без переносу слів
|
1 |
2 |
SS_ENH METAFILE |
В заданому прямокутнику відобразити метафайл, ім’я якого задано параметром тексту заголовка |
SS_NOTIFY |
Вікно цього стилю функції батьківського вікна надсилає повідомлення STN_CLICKED і STN_DBLCLK про натиснення чи подвійне клацання лівою кнопкою миші |
SS_SIMPLE |
Виводить текст в один рядок, використовуючи функцію TextOutі вирівнюючи по лівому краю. Символи табуляції не замінює пробілами. При повторному виведенні тексту вміст прямокутника не знищується, тому новий текст не повинен бути коротший за попередній. Звичайно комбінують зі стилемSS_NOPREFIX(використовується більш швидка функціяExtTextOut) |
Для створення статичного органа управління викликають функцію CreateWindow. В якості першого параметра вказуютьSTATIC.
Наступний оператор демонструє створення статичного органу управління:
HWND hStatic=CreateWindow("STATIC", NULL, WS_CHILD|WS_VISIBLE|
SS_BLACKFRAME, 20< 40, 100, 50, hwnd, (HMENU)0, hInstance, NULL);
Другий параметр визначає текст, який буде розташовано всередині орагну управління. Якщо текст не використовується, цей параметр вказують як NULL.
В третьому параметрі вказують один зі стилів статичного органа управління. В прикладі вказано стиль SS_BLACKFRAME, тобто статичний орган представляє собою рамку кольоруCOLOR_WINDOWFRAME. Текст заголовку вікна при цьому стилі статичного органа не використовують. Цей параметр функціїCreateWindowвказано якNULL.
Оскільки статичний орган управління не надсилає повідомлень батьківському вікну, в якості дев’ятого параметра (ідентифікатор органу управління_ можна вказати будь-яке число, наприклад, 0.