- •Лабораторна робота №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
Параметры dwExStyle:
|
Стиль |
Описание |
|
WS_EX_ACCEPTFILES |
Определяет, что окно этого стиля поддерживает drag-dropдля файлов. |
|
WS_EX_APPWINDOW |
Forces a top-level window onto the taskbar when the window is visible. |
|
WS_EX_CLIENTEDGE |
Определяет, что окно имеет границу с притопленным краем. |
|
WS_EX_CONTEXTHELP |
Отображает кнопку с вопросительным знаком в окне заголовка, по нажатию на которую открывается раздел контекстно-зависимой справки. |
|
WS_EX_CONTROLPARENT |
Позволяет пользователю переключаться между дочерними окнами по клавише Tab. |
|
WS_EX_DLGMODALFRAME |
Создает окно, которое имеет двойную границу. |
|
WS_EX_LEFT |
Окно имеет свойство по умолчанию : "выровненные по левой границе". |
|
WS_EX_LEFTSCROLLBAR |
Если язык оболочки - Иврит, Арабский, или другой язык, читающийся справа налево, вертикальная полоса прокрутки рассположена слева. |
|
WS_EX_LTRREADING |
Текст в окне рассположен слева направо. |
|
WS_EX_MDICHILD |
Создаёт дочернее MDIокно. |
|
WS_EX_NOPARENTNOTIFY |
Определяет, что дочернее окно не посылает сообщение WM_PARENTNOTIFY.destroyed. |
|
WS_EX_OVERLAPPEDWINDOW |
Совмещает стили WS_EX_CLIENTEDGE и WS_EX_WINDOWEDGE. |
|
WS_EX_PALETTEWINDOW |
Совмещает стили WS_EX_WINDOWEDGE, WS_EX_TOOLWINDOW и WS_EX_TOPMOST. |
|
WS_EX_RIGHT |
Окно имеет свойство "выравнивание по правому краю". Этот стиль имеет эффект только, если язык оболочки - Иврит, Арабский, или другой язык, который читается справа налево. |
|
WS_EX_RIGHTSCROLLBAR |
Полоса прокрутки находится в правой части окна. |
|
WS_EX_RTLREADING |
Если язык оболочки - Иврит, Арабский, или другой язык, читающийся справа налево, текст в окне рассположен справа налево. |
|
WS_EX_STATICEDGE |
Создает окно с трехмерным стилем границы. |
|
WS_EX_TOOLWINDOW |
Создает окно, используемое как перемещаемая панель инструментов. |
|
WS_EX_TOPMOST |
Создаёт окно, отображаемое поверх всех остальных окон. |
|
WS_EX_TRANSPARENT |
Specifies that a window created with this style should not be painted until siblings beneath the window (that were created by the same thread) have been painted. The window appears transparent because the bits of underlying sibling windows have already been painted. |
|
WS_EX_WINDOWEDGE |
Определяет, что окно имеет границу с приподнятым краем. |
Параметры dwStyle :
|
Стиль |
Описание |
|
WS_BORDER |
Создаёт окно с «тонкой» границей. |
|
WS_CAPTION |
Создаёт окно, имеющее заголовок. |
|
WS_CHILD |
Создаёт дочернее окно. |
|
WS_CHILDWINDOW |
Аналогично WS_CHILD. |
|
WS_CLIPCHILDREN |
Исключает область, занятую дочерними окнами, когда прорисовка происходит в пределах родительского окна |
|
WS_CLIPSIBLINGS |
Отсекает дочерние окна относительно друг друга. |
|
WS_DISABLED |
Создаёт неактивное, по умолчанию, окно. |
|
WS_DLGFRAME |
Создаёт окно с границей диалогового окна (не имеет заголовка). |
|
WS_GROUP |
Определяет первый элемент в группе средств управления. |
|
WS_HSCROLL |
Создаёт окно с горизонтальной полосой прокрутки. |
|
WS_ICONIC |
Создаёт «минимизированное» окно. |
|
WS_MAXIMIZE |
Создаёт окно, развёрнутое на весь экран. |
|
WS_MAXIMIZEBOX |
Создаёт окно, имеющее кнопку «развернуть». |
|
WS_MINIMIZE |
Аналогично WS_ICONIC. |
|
WS_MINIMIZEBOX |
Создаёт окно, имеющее кнопку «свернуть». |
|
WS_OVERLAPPED |
Создает перекрытое окно. |
|
WS_OVERLAPPEDWINDOW |
Создает перекрытое окно со стилями : WS_OVERLAPPED,WS_CAPTION,WS_SYSMENU,WS_THICKFRAME,WS_MINIMIZEBOX,WS_MAXIMIZEBOX. |
|
WS_POPUP |
Создает всплывающее окно. |
|
WS_POPUPWINDOW |
Создает всплывающее окно со стилями : WS_BORDER,WS_POPUP,WS_SYSMENU. |
|
WS_SIZEBOX |
Создаёт окно с "расстягивающейся" границей. |
|
WS_SYSMENU |
Создаёт окно имеющее системное меню в строке заголовка. |
|
WS_TABSTOP |
Определяет элемент, получающий фокус при нажатии Tab. |
|
WS_THICKFRAME |
Аналогично WS_SIZEBOX. |
|
WS_TILED |
Аналогично WS_OVERLAPPED. |
|
WS_TILEDWINDOW |
Аналогично WS_OVERLAPPEDWINDOW. |
|
WS_VISIBLE |
Создаёт окно, видимое по умолчанию. |
|
WS_VSCROLL |
Создаёт окно с вертикальной полосой прокрутки. |
7. Функция ShowWindow :
Устанавливает режим отображения заданного окна.
BOOL ShowWindow(
HWND hWnd, // дескриптор окна
int nCmdShow // режим отображения окна
);
Функция UpdateWindow :
Обновляет клиентскую область заданного окна, отправляя ему сообщение WM_PAINT, если область обновления не пуста. Функция отправляет сообщениеWM_PAINнапрямую оконной процедуре указанного окна, обходя очередь сообщений приложения. Если область обновления пуста, то сообщение не отправляется.
BOOL UpdateWindow(
HWND hWnd // дескриптор окна
);
9. Функция GetMessageA :
Извлекает сообщение из очереди сообщений вызывающего потока и помещает его в указанную структуру
BOOL GetMessage(
LPMSG lpMsg, // адрес структуры с сообщением
HWND hWnd, // дескриптор окна
UINT wMsgFilterMin, // первое сообщение
UINT wMsgFilterMax // последнее сообщение
);
10. Функция TranslateMessageA :
Преобразует сообщения виртуальных клавиш в сообщения о символах.
BOOL TranslateMessage(
CONST MSG *lpMsg // адрес структуры сообщения
);
11. Функция DispatchMessageA:
Передает сообщение оконной функции.
LONG DispatchMessage(
CONST MSG *lpmsg // указатель на структуру с сообщением
);
