Win32 API

Приклади виведення в клієнтську область вікна графіки і тексту

Нехай у додатку необхідно виводити в клієнтську область вікна текст, графічні примітиви і растрове зображення Для того щоб можна було виконувати цей висновок незалежно і в потрібній послідовності, будемо при натисканні клавіші «1» виводити рядки тексту, при натисканні клавіші «2» виводити графічні фігури, а при натисненні «3» растрове зображення Тоді вибір при виведенні будемо запамятовувати […]

Повідомлення WMPAINT і його обробка

Якщо вікно переміщається по екрану за допомогою клавіатури або миші, то збереження в незмінному вигляді вмісту клієнтської області вікна забезпечують системні програми Якщо частина вікна затуляється при розгортанні пунктів меню, то тимчасово закриту область ОС також зберігає сама і потім відновлює Якщо ж необхідно розгорнути згорнуте вікно, або розтягнути вікно, або на тлі головного вікна […]

Робота з меню

У більшості Windows-додатків використовується меню Меню, що розташоване під заголовком вікна, називається віконним або головним меню Плаваюче меню може зявитися в будь-якому місці після клацання правої кнопки миші Будь-яке меню складається з пунктів, що позначаються словом або графічним зображенням Пункт меню може бути відзначений галочкою, що означає вибір деякого режиму роботи програми Якщо після вибору […]

Виклик функцій WinAPI в середовищі MASM32

MASM32 використовує набір макросів, що дозволяє наблизити синтаксис асемблера до синтаксису мов високого рівня і зменшити кількість помилок Кожен макрос має імя і формальні параметри, проте, на відміну від класичних макросредств асемблера, імена формальних параметрів можуть бути забезпечені додатковими модифікаторами Наприклад, розглянемо макрос з імям Prim, який має 4 параметри, з них перший обовязковий, другий […]

Список рядків List Box

Елемент управління «список рядків» створюється на основі визначеного класу «listbox», яка відповідає за формування вікна, в клієнтській області якого відображається список, з якого можна здійснювати вибір одного або декількох елементів Якщо розміри вікна для списку не дозволяють вмістити всі рядки, то створюється смуга прокрутки У списку можна вибрати або один елемент, або декілька Елементи списку […]

Призначення і типи контекстів

Основою механізму взаємодії додатків Windows з графічними пристроями (екран і принтер) є інтерфейс графічних пристроїв GDI (Graphics Device Interface) GDI це сукупність програмних коштів Windows, організуючих висновок на екран або принтер графічних обєктів текстових рядків, геометричних фігур, зображень і тп Windows-додаток не має безпосереднього доступу до апаратури Замість цього воно викликає функції GDI, які працюють […]

Використання таймера в додатках

Для відстеження тимчасових проміжків в системі або виконання дій у програмі з необхідною періодичністю в Win32 реалізований ряд API-функцій При роботі з ними необхідно памятати, що система Windows не є ОС реального часу, і точність підрахунку часу залежить від виникнення переривань в системі і кількості одночасно запущених додатків Під часом Windows розуміється кількість мілісекунд, які […]

Приклади програм з обробки повідомлень від клавіатури і миші

Приклад 1 Реалізувати зміна тексту заголовка вікна на заданий текст за подвійним клацанням правої кнопки в клієнтській області вікна Зворотну заміну заголовка здійснити після натискання клавіші F1 .model flat,stdcall option casemap:none

Повідомлення від клавіатури

При натисканні та відпусканні клавіш драйвер клавіатури формує повідомлення і передає їх в системну чергу повідомлень Потім повідомлення від клавіатури надходять в чергу повідомлень програми-власника вікна, має фокус вводу (input focus) Поняття фокусу введення повязане з активним вікном Вікно, що має фокус введення це або активне вікно, або дочірнє вікно активного вікна Вікно є активним, […]

ДИНАМІЧНІ БІБЛІОТЕКИ Загальні відомості

Бібліотеки динамічного компонування (dynamic link libraries-DLL) є виконуваними файлами особливого формату, які містять функції, дані або ресурси, доступні для інших додатків Особливий формат модулів DLL передбачає наявність в них розділів імпорту та експорту Розділ експорту вказує ті ідентифікатори обєктів (функцій, класів, змінних), доступ до яких дозволено для клієнтів