- •Системное программное обеспечение
- •1 40 01 01 “Программное обеспечение информационных технологий”
- •1 40 01 02 “Информационные системы и технологии”
- •Содержание
- •Часть 1 3
- •Часть 1 Лабораторная работа № 1 Простейшее приложение на базе win32 api
- •1.2 Постановка задачи: Выбор варианта!
- •2. Классы окон, регистрация оконного класса.
- •3. Создание экземпляра оконного класса.
- •1.3 Теоретические сведения:
- •1. Структура оконного класса, поля, их назначение, инициализация.
- •4. Отображение окон на экране.
- •5. Управление положением и размерами окна
- •6. Обновление оконной области на экране.
- •7. Установка фона.
- •8. Курсор приложения. Типы курсоров, их прикрепление к приложению.
- •9. Цикл обработки сообщений
- •10. Оконная функция
- •Лабораторная работа № 2 Программирование внешних устройств
- •2.2 Постановка задачи:
- •2.3 Теоретические сведения:
- •1. Механизм сообщений от клавиатуры
- •2. Коды oem, ansi, ascii, виртуальные коды
- •3. Виртуальные клавиши
- •4. Символьные сообщения
- •1. Захват и освобождение окном мыши
- •2. Обработка сообщений от мыши
- •3. Координаты X,y
- •1. Установка таймера
- •2. Функция таймера
- •Лабораторная работа № 3 Диалоги и элементы управления
- •3.2 Постановка задачи:
- •3.3 Теоретические сведения:
- •3.3.1 Модальное диалоговое окно
- •3.3.2 Немодальное диалоговое окно
- •3.3.3 Процедура диалогового окна
- •3.3.4 Элементы управления диалогового окна
- •3.3.5 Принципы работы с элементами управления
- •3.3.6 Класс “edit”
- •3.3.7 Класс “listbox”
- •3.3.7. Класс “ combobox ”
- •3.3.8 Корректность вводимых данных.
- •3.3.9 Окна сообщений. Использование окон сообщений.
- •Лабораторная работа № 4 Работа с файлами.
- •4.2. Постановка задачи:
- •4.3 Теоретические сведения:
- •Создание текстового файла. Запись в текстовый файл.
- •Литература
10. Оконная функция
Оконная функция вызывается операционной системой Windows, когда программе нужно послать сообщение. В качестве параметров оконная функция получает сообщение, посылаемое Windows.
LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
У функции окна имеется четыре аргумента: hWnd - идентификатор окна, msg - код текущего сообщения, wParam и lParam - дополнительная информация о сообщении.
В Windows существует более тысячи стандартных сообщений. Для обработки стандартных сообщений существует функция DefWindowProc(), которая обрабатывает переданное ей сообщение по умолчанию. Таким образом, вы должны обрабатывать только те сообщения, обработка по умолчанию которых вас не устраивает.
LRESULT DefWindowProc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
Лабораторная работа № 2 Программирование внешних устройств
2.1 Цель работы: Изучить основы разработки и архитектуру Windows – приложений на базе WIN 32 API. Программирование аппаратных устройств : клавиатура, мышь, таймер.
Изучаемые вопросы:
На базе архитектуры WIN 32 Application рассмотреть вопросы:
Клавиатура
1. Механизм сообщений от клавиатуры.
2. Коды OEM, ANSI, ASCII, виртуальные коды.
3. Виртуальные клавиши.
4. Символьные сообщения.
5. Системные сообщения.
6. Преобразование кодов.
7. Как отличить нажатия совпадающих клавиш.
8. Как узнать ввод строчных и прописных букв.
9. Фокус ввода.
Мышь
1. Захват и освобождение окном мыши.
2. Обработка сообщений от мыши.
3. Координаты x,y.
4. Курсор мыши. Управление курсором.
5. Макроопределения сообщений мыши.
6. Сообщения мыши в клиентской и не клиентской области окна.
Таймер
1. Установка таймера.
2. Функция таймера.
3. Снятие таймера.
2.2 Постановка задачи:
На базе лабораторной работы №1 разработать WIN 32 Application содержащее все вопросы из пункта изучаемые вопросы.
2.3 Теоретические сведения:
1. Механизм сообщений от клавиатуры
Когда пользователь нажимает или отпускает клавишу, Windows посылает в программу сообщение ввода с клавиатуры. Ниже. приводится перечень сообщений ввода с клавиатуры и события, их вызывающие:
Сообщение Событие
WM_KEYDOWN Пользователь нажал клавишу;
WM_KEYUP Пользователь отпустил клавишу;
WM_SYSKEYDOWN Пользователь нажал системную клавишу;
WM_SYSKEYUP Пользователь отпустил системную клавишу.
2. Коды oem, ansi, ascii, виртуальные коды
OEM код храниться в lParam c 16 по 23 бит
Виртуальный код клавиши - это независимое от устройства значение клавиши. Windows использует виртуальные коды клавиш для того, чтобы не зависить от используемой персональной ЭВМ. Виртуальный код передаются в параметре wParam.
3. Виртуальные клавиши
Когда пользователь нажимает или отпускает клавишу, Windows посылает в программу сообщение ввода с клавиатуры
общение Событие
----------------------------------------------------------
WM_KEYDOWN Пользователь нажал клавишу;
WM_KEYUP Пользователь отпустил клавишу;
WM_SYSKEYDOWN Пользователь нажал системную клавишу;
WM_SYSKEYUP Пользователь отпустил системную клавишу.
Параметр wParam определяет виртуальный код данной клавиши. Виртуальный код клавиши - это независимое от устройства значение клавиши. Windows использует виртуальные коды клавиш для того, чтобы не завесить от используемой персональной ЭВМ.
