- •Лабораторна робота №1 Загальні теоретичні відомості:
- •Питання для самоконтролю:
- •Лабораторна робота №2 Системний реєстр Windows
- •Огляд системного реєстру
- •Скарбниця імен
- •Призначений для користувача модуль
- •Системний блок
- •Загальний модуль
- •Ключі конфігурації
- •Конфігураційні файли win.Ini і system.Ini
- •Питання для самоконтролю:
- •Лабораторная работа №3
- •Основы программирования в операционной системе Windows
- •Вызов функций api
- •Структура окна
- •Принципы построения оконных приложений
- •Структура окна
- •Параметры dwExStyle:
- •Параметры dwStyle :
- •12. Функция ExitProcess :
- •17. Функция BeginPaint:
- •Сообщения, посылаемые списку
- •Вопросы для подготовки к сдаче лабораторной работы.
- •Лабораторная работа №4
- •Язык описания ресурсов
- •Пиктограммы
- •Курсоры
- •Акселераторы
- •Api – функции
- •Вопросы для подготовки к сдаче лабораторной работы.
- •Лабораторная работа №5
- •Типы многозадачности
- •Использование многопоточности в приложениях Delphi
- •Синхронизации потоков
- •Критические секции
- •Пример создания многопоточного приложения в Delphi:
- •Лабораторная работа №6 «Специальные объекты синхронизации»
- •Событие (event)
- •Мьютекс (mutex )
- •Семафор (semaphore)
- •Crytical Sections
12. Функция ExitProcess :
Завершает процессы и все потоки.
VOID ExitProcess(
UINT uExitCode // код выхода для всех потоков
);
13. Функция PostQuitMessage :
Указывает Windows, что поток послал запрос на завершение.
VOID PostQuitMessage(
int nExitCode // код возврата
);
14. Функция DefWindowProc :
Вызывает оконную процедуру по умолчанию для обработки сообщений, которые не обрабатываются приложением.
LRESULT DefWindowProc(
HWND hWnd, // дескриптор окна
UINT Msg, // сообщение
WPARAM wParam, // первый параметр сообщения
LPARAM lParam // второй параметр сообщения
);
15. Функция SetFocus:
Устанавливает фокус на определенное окно. Окно должно быть связано с вызовом нити очереди сообщений.
HWND SetFocus (
HWND hWnd // дескриптор окна
);
16. Функция SendMessage:
Функция посылает сообщение окну или окна.м. Функция вызывает процедуру окна и не возвращает значения, пока процедура окна не обработает сообщение.
LRESULT SendMessage(
HWND hWnd, // дескриптор окна
UINT Msg, // сообщение для передачи
WPARAM wParam, // первый параметр сообщения
LPARAM lParam // второй параметр сообщения
);
17. Функция BeginPaint:
Функция готовит окно для рисования и заполнения структуры PAINTSTRUCTинформацией о рисовании.
HDC BeginPaint(
HWND hwnd, // дескриптор окна
LPPAINTSTRUCT lpPaint // информация о рисовании
);
18. Функция EndPaint:
Функция отмечает окончание рисования в окне.
BOOL EndPaint(
HWND hWnd, // дескриптор окна
CONST PAINTSTRUCT *lpPaint // данные рисования
);
19. Функция TextOut:
Функция записывает строку символов в определенную позиция, использую текущий шрифт, цвет фона и цвет текста.
BOOL TextOut(
HDC hdc, // дескриптор
int nXStart, // x-координата начала
int nYStart, // y-координта начала
LPCTSTR lpString, // строка символов
int cbString
);
20. Функция CreateSolidBrush:
Функция создает логическую кисть, у которой есть определенный цвет.
HBRUSH CreateSolidBrush(
COLORREF crColor // значение цвета кисти
);
21. Функция SetBkColor:
Функция устанавливает текущий цвет фона значением цвета.
COLORREF SetBkColor(
HDC hdc, // дескриптор
COLORREF crColor // значение цвета фона
);
22. Функция SetTextColor:
The SetTextColor function sets the text color for the specified device context to the specified color.
COLORREF SetTextColor(
HDC hdc, // дескриптор
COLORREF crColor // цвет текста
);
Сообщения ОС Windows
wm_setfocus– установить фокус;
wm_destroy– сообщение приходит при закрытии окна;
wm_create– сообщение приходит при создании окна;
wm_command– выполняются какие-то действия с окном;
wm_settext– послать элементу строку;
wm_gettext– сообщение позволяющее, получить строку;
wm_paint– посылается, когда приложение делает запрос на рисование
wm_seticon– устанавливает окну диалог
wm_initdialog– посылается диалоговому окно до того, как оно будет показано.
wm_rbuttondown – приходит при нажатии на правую кнопку мыши
wm_lbuttondown– приходит при нажатии на левую кнопку мыши