Создание GUI приложений

Содержание

Слайд 2

Создание GUI-приложений

GUI-приложение – это такой тип приложения, которое создается и выполняется на

Создание GUI-приложений GUI-приложение – это такой тип приложения, которое создается и выполняется на основе графического интерфейса.
основе графического интерфейса.

Слайд 3

Создание GUI-приложений

Категории сообщений
1. Сообщения-запросы (используются для изменения или получения значений свойств адресата);
2.

Создание GUI-приложений Категории сообщений 1. Сообщения-запросы (используются для изменения или получения значений
Сообщения-уведомления (используются для сообщения своих свойств).

Слайд 4

Создание GUI-приложений

Каждому потоку, создавшему хотя бы одно окно, ОС выделяет свою очередь

Создание GUI-приложений Каждому потоку, создавшему хотя бы одно окно, ОС выделяет свою
сообщений, используя структуру THREADINFO.

Слайд 5

Создание GUI-приложений

Структура THREADINFO содержит:
- указатель на очередь асинхронных сообщений;
- указатель на очередь

Создание GUI-приложений Структура THREADINFO содержит: - указатель на очередь асинхронных сообщений; -
синхронных сообщений;
- указатель на очередь виртуального ввода;
- указатель на очередь ответных сообщений;
- флаги пробуждения;
- переменные, отражающие локальное состояние ввода;
- переменная nExitCode.

Слайд 6

Создание GUI-приложений

Посылка асинхронных сообщений:
BOOL PostMessage (
HWND hwnd, // дескриптор окна, которому
// посылается сообщение
UINT uMsg, // код

Создание GUI-приложений Посылка асинхронных сообщений: BOOL PostMessage ( HWND hwnd, // дескриптор
сообщения
WPARAM wParam, // параметры сообщения
LPARAM lParam); //параметры сообщения
Флаг пробуждения: QS_POSTMESSAGE
void PostQuitMessage (int nExitCode);
Флаг пробуждения: QS_QUIT

Слайд 7

Создание GUI-приложений

Посылка синхронных сообщений:
LRESULT SendMessage (
HWND hwnd, // дескриптор окна, которому
// посылается сообщение
UINT uMsg, //

Создание GUI-приложений Посылка синхронных сообщений: LRESULT SendMessage ( HWND hwnd, // дескриптор
код сообщения
WPARAM wParam, // параметры сообщения
LPARAM lParam); //параметры сообщения
Флаг пробуждения: QS_SENDMESSAGE

Слайд 8

Создание GUI-приложений

Создание GUI-приложений

Слайд 9

Создание GUI-приложений

Режим функционирования окна
1. Приоритетное окно, foreground window (созданное потоком, с которым

Создание GUI-приложений Режим функционирования окна 1. Приоритетное окно, foreground window (созданное потоком,
в текущий момент времени работает пользователь);
2. Фоновое окно, background window (неприоритетное окно, например рабочий стол).

Слайд 10

Создание GUI-приложений

Расположение окон относительно друг друга
1. Окно-владелец всегда находится ниже (под) окнами,

Создание GUI-приложений Расположение окон относительно друг друга 1. Окно-владелец всегда находится ниже
которыми владеет.
2. При уничтожении окна-владельца система автоматически уничтожает все окна, которыми владеет.
3. При сворачивании окна-владельца сворачиваются все окна, которыми он владеет.

Слайд 11

Создание GUI-приложений

Области окна
1. Служебная область (область окна с заголовком, меню, рамками и

Создание GUI-приложений Области окна 1. Служебная область (область окна с заголовком, меню,
т.д.).
2. Клиентская область (область окна для вывода изображений).

Слайд 12

Создание GUI-приложений

Типы окон
1. Перекрывающиеся окна (overlapped window);
2. Всплывающие окна (pop-up window);
3. Дочерние

Создание GUI-приложений Типы окон 1. Перекрывающиеся окна (overlapped window); 2. Всплывающие окна
окна (child window);
4. Слоистые окна (layered window);
5. Окна для сообщений (message-only window).

Слайд 13

Создание GUI-приложений

Состояния окон
1. Скрытое окно
2. Свернутое окно
3. Развернутое окно
4. Активное окно
5. Заблокированное

Создание GUI-приложений Состояния окон 1. Скрытое окно 2. Свернутое окно 3. Развернутое
окно

Слайд 14

Создание GUI-приложений

Алгоритм создания простого GUI-приложения
1. Описание функции WinMain(), которая содержит:
- описание класса

Создание GUI-приложений Алгоритм создания простого GUI-приложения 1. Описание функции WinMain(), которая содержит:
окна приложения;
- регистрацию описанного класса;
- создание главного окна приложения;
- отображение главного окна приложения;
- организацию цикла обработки сообщений для окна.
2. Описание оконной процедуры, которая содержит обработку получаемых сообщений.

Слайд 15

Создание GUI-приложений

Точка входа в программу:
int WINAPI WinMain(
HINSTANCE hIns,
HINSTANCE hPrevIns,
LPSTR lpszCmpLine,
int nCmdShow);

Создание GUI-приложений Точка входа в программу: int WINAPI WinMain( HINSTANCE hIns, HINSTANCE
Имя файла: Создание-GUI-приложений.pptx
Количество просмотров: 118
Количество скачиваний: 0