Разработка сайта для Вашего бизнеса. Веб дизайн. Дизайн логотипа, фирменного стиля, рекламная фотография . Комплексный рекламный креатив.

Ralex. We do the work.
На рынке с 1999го года. Средняя ценовая категория. Ориентация на эффективность решений.
Ознакомтесь с нашим портфолио
Узнайте больше о услугах
Свяжитесь с нами:
E-mail: [email protected]
Tel: (044) 587 - 84 - 78
Custom web design & дизайн и разработка сайта "под ключ"
Креативный, эффективный дизайн. Система управления сайтом (СУС).
Custom flexible разработка систем электронной коммерции
Система e-commerce разрабатывается под индивидуальные потребности. Гибкая функциональность.
Search Engine Optimzation & оптимизация под поисковые системы (SEO)
Постоянная оптимизация и мониторинг сайта в поисковых системах. Достигаем результата быстро и эффективно
Custom logo design & дизайн логотипа и фирменного стиля
Многолетний опыт. Огромное портфолио. Уникальное предложение и цена.
профессиональная рекламная фотография
креативно, смело, качественно
Custom logo design & рекламный креатив. дизайн рекламы
Многолетний опыт. Огромное портфолио. Уникальное предложение и цена.

НОУ ІНТУЇТ | лекція | Програмування під Windows з використанням Win API

  1. Основні поняття і терміни, використовувані при розробці Windows додатків
  2. Нотація Windows ( "угорська нотація Чарльза Сімоні")
  3. Деякі префікси угорської нотації:
  4. Часто використовувані типи даних Windows:
  5. Створення найпростішого Windows-додатки з використанням Win API
  6. Найпростіша програма. Створення і висновок Windows-вікна на екран
  7. Коментарі до програми
  8. Параметри функції WinMain:

Наша взаимовыгодная связь https://banwar.org/

Анотація: У даній лекції вводяться основні терміни і поняття, що використовуються при розробці Windows-додатків. Розглядаються найпростіші приклади створення Windows-додатки з використанням Win-API.

Основні поняття і терміни, використовувані при розробці Windows додатків

Приклади програм для лекції Приклади програм для лекції.

Ядро Windows:

  • USER (16, 32) .dll - функції введення з клавіатури миші, введення через інтерфейс і т.д. (Взаємодія додатків з користувачами і середовищем Windows).
  • KERNEL (16, 32) .dll - функції операційної системи (пам'ять, розподіл системних ресурсів, завантаження).
  • GDI (16, 32) .dll - графічний інтерфейс (функції створення та для демонстрації зображень).

GUI (Graphics User Interface) - стандартний графічний інтерфейс користувача. Це та частина Windows, яка забезпечує підтримку апаратно-незалежної графіки.

API (Application Program Interface) - інтерфейс прикладних програм (набір функцій, зосереджених в ядрі Windows і додаткових бібліотеках).

DLL (Dynamic Link Libraries) - бібліотека динамічного компонування. Функції API містяться в бібліотеках динамічного завантаження.

DDE - динамічний обмін даними.

Нотація Windows ( "угорська нотація Чарльза Сімоні")

При програмуванні під Windows прийнято використовувати префікси перед іменами змінних, що вказують на приналежність до типу даних. Рекомендується давати імена власним змінним і ідентифікаторів, дотримуючись таких принципів:

  1. мнемонічне значення - ідентифікатор повинен легко запам'ятовуватися;
  2. смислове значення - роль ідентифікатора повинна бути ясна з його назви;
  3. спадкоємність - схожі об'єкти повинні мати схожі ідентифікатори;
  4. швидкість прийняття рішення - придумування, введення і редагування ідентифікатора не повинні займати багато часу.

Деякі префікси угорської нотації:

Префікс Значення A масив B логічний тип (int) By беззнаковий символьний тип (byte) C символьний тип (1 байт) Cb лічильник байтів Cr колір cx, cy короткий тип (short) Dbl double (з плаваючою точкою) Dw беззнаковое довге ціле число ( dword) Flt float (речова з плаваючою точкою) Fn функція g_ префікс для глобальної змінної (глобальна змінна) H handle (беззнаковое ціле число) hDC handle (покажчик на контекст пристрою) I ціле (integer) Id інтегральне значення ідентифікатора L довгий тип (long ) Lp довгий покажчик Lpsz дальній покажчик на рядок, що закінчується нульовим байтом m_ змінна класу N short або int Np ближній покажчик P покажчик Pfn покажчик на функцію Pst покажчик на структуру Psz покажчик на рядок, що закінчується нульовим байтом Pv покажчик на тип void S рядок Sz рядок, що закінчує нуль-символом U беззнаковий символ Tm текстова метрика V тип void W беззнаковое ціле (word, 16-біт) x, y коротке ціле число (координата x або y)

Часто використовувані типи даних Windows:

Тип даних Опис HANDLE визначає ідентифікатор; 32-розрядний ціле, яке використовується в якості дескриптора - числа, що визначає деякий ресурс HWND визначає ідентифікатор вікна HDC визначає ідентифікатор контексту пристрою LONG 32-бітове ціле зі знаком LPSTR визначає лінійний покажчик NULL 0 UINT тип даних Win32 (32 біта для Win32) WCHAR 16- бітовий символ UNICODE. Використовується для представлення символів мов світу

Створення найпростішого Windows-додатки з використанням Win API

Елементи Windows-додатки

Побудова додатки Windows включає виконання наступних етапів:

  1. Створення WinMain (...) і пов'язаних з нею функцій на мові C або C ++.
  2. Створення описів меню і всіх додаткових ресурсів, приміщення описів в файл опису ресурсів.
  3. Створення унікальних курсорів, піктограм і бітових образів.
  4. Створення діалогових вікон.
  5. Створення файлу проекту.
  6. Компіляція і компоновка всього коду.

Найпростіша програма. Створення і висновок Windows-вікна на екран

Створимо порожній проект Windows- додатка за допомогою майстра:

  1. File New Project.
  2. Project types: Win32 Templates: Win32 Project.
  3. Ok.
  4. Встановити галочку Empty project.
  5. Додати в проект файл * .cpp.
  6. Project Properties. Вкладка Configuration Properties General.
  7. Значення поля Character Set встановлюємо Use Multi-Byte Character Set.

Додамо наступний код:

#include <windows.h> LONG WINAPI WndProc (HWND, UINT, WPARAM, LPARAM); int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {HWND hwnd; MSG msg; WNDCLASS w; memset (& w, 0, sizeof (WNDCLASS)); w.style = CS_HREDRAW | CS_VREDRAW; w.lpfnWndProc = WndProc; w.hInstance = hInstance; w.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH); w.lpszClassName = "My Class"; RegisterClass (& w); hwnd = CreateWindow ( "My Class", "Вікно користувача", WS_OVERLAPPEDWINDOW, 500, 300, 500, 380, NULL, NULL, hInstance, NULL); ShowWindow (hwnd, nCmdShow); UpdateWindow (hwnd); while (GetMessage (& msg, NULL, 0,0)) {TranslateMessage (& msg); DispatchMessage (& msg); } Return msg.wParam; } LONG WINAPI WndProc (HWND hwnd, UINT Message, WPARAM wparam, LPARAM lparam) {switch (Message) {case WM_DESTROY: PostQuitMessage (0); break; default: return DefWindowProc (hwnd, Message, wparam, lparam); } Return 0; }

Скомпілюємо і запустимо програму. На екрані з'явиться Windows-вікно.

Коментарі до програми

Всі додатки Windows повинні містити два основних елементи: функцію WinMain (...) і функцію вікна WndProc.

Функція WinMain (...) служить точкою входу в додаток. Ця функція відповідає за наступні дії:

  1. реєстрацію типу класу вікон програми;
  2. виконання всіх дій, що ініціалізували;
  3. створення і ініціалізацію циклу повідомлень додатка;
  4. завершення програми (зазвичай при отриманні повідомлення WM_QUIT).

Функція WndProc відповідає за обробку повідомлень Windows. Ця частина програми є найбільш змістовною з точки зору виконання поставлених перед програмою завдань. Якщо ми хочемо, щоб програма звертала на наші дії увагу, то необхідно додати гілки case для оператора switch в віконну процедуру WndProc. Наприклад, якщо ми хочемо, щоб наш додаток звертало увагу на клацання лівою кнопкою миші - додаємо гілку case WM_LBUTTONDOWN. На даний момент у віконній процедурі відбувається тільки обробка повідомлення WM_DESTROY. Більше Windows-вікно поки нічого робити не вміє.

Заголовки windows.h потрібен для будь-якої традиційної Windows програми на C. Саме в ньому містяться різні визначення констант (WM_DESTROY і т. Д.).

Параметри функції WinMain:

  1. hInstance (тип HINSTANCE) - є ідентифікатором поточного екземпляра додатка. Дане число однозначно визначає програму, що працює під управлінням Windows.
  2. hPrevInstance (тип HINSTANCE) - вказував раніше (Windows 3.1) на попередній запущений екземпляр програми. У сучасних версіях Windows він дорівнює NULL.
  3. lpCmdLine - це покажчик на рядок, що закінчується нульовим байтом. У цьому рядку містяться аргументи командного рядка додатка (як правило, містить NULL).
  4. nCmdShow - цей параметр приймає значення однієї із системних констант, що визначають спосіб зображення вікна (наприклад, SW_SHOWNORMAL, SW_SHOWMAXIMIZED або SW_SHOWMINIMIZED).

Категории
  • Биология
  • Математика
  • Краеведению
  • Лечебная
  • Наука
  • Физике
  • Природоведение
  • Информатика
  • Новости

  • Новости
    https://banwar.org/
    Наша взаимовыгодная связь https://banwar.org/. Запустив новый сайт, "Пари Матч" обещает своим клиентам незабываемый опыт и возможность выиграть крупные суммы.


    Наши клиенты
    Клиенты

    Быстрая связь

    Тел.: (044) 587-84-78
    E-mail: [email protected]

    Имя:
    E-mail:
    Телефон:
    Вопрос\Комментарий: