Составители:
Рассмотрим, как создать элементарное графическое окно в Windows. Как уже ука-
зывалось выше, главной функцией для разработки такой программы будет WinMain().
Сразу после входа в WinMain() создается и регистрируется класс главного окна прило-
жения. Для этого необходимо заполнить структуру WNDCLASS. Для создания окна ис-
пользуются функции CreateWindow() непосредственно для его создания, ShowWindow()
для визуализации и UpdateWindow() для перерисовки. Все эти функции описаны в файле
windows.h. Рассмотрим структуру WNDCLASS и наиболее значимую функцию Create-
Window() более подробно.
Структура WNDCLASS состоит из 10 полей:
typedef struct tagWNDCLASS
{
UINT cbSize; //размер структуры в байтах
UINT style; //стиль класса окна
WNDPROC lpfnWndProc; // указатель на функцию окна
HINSTANCE hInstance; //дескриптор приложения, которое запускает окно
HICON hIcon; //дескриптор пиктограммы
HCURSOR hCursor; // дескриптор курсора
HBRUSH hbrBackground; // дескриптор кисти для закраски фона
LPCTSTR lpszMenuName; //указатель на строку с именем меню
LPCTSTR lpszClassName; // указатель на строку с именем класса
HICON hIconSm; //дескриптор малой пиктограммы
} WNDCLASS;
Функция CreateWindow() получает на входе 11 параметров:
HWND CreateWindow (
LPCTSTR lpClassName, // зарегистрированное имя класса
LPCTSTR lpWindowName, // имя окна
DWORD dwStyle, // стиль окна
int x, // x -координата позиции окна
int y, // y -координата позиции окна
int nWidth , // ширина окна
int nHeight , // высота окна
HWND hWndParent , // указатель родительского окна
HMENU hMenu , // дескриптор меню, NULL если меню нет
HINSTANCE hInstance , // дескриптор приложения
LPVOID lParam );// данные, которые могут быть переданы создания окна
// NULL если данные не передаются
Для примера рассмотрим исходный текст программы, которая создает элементар-
ное окно в Windows.
#include "windows.h"
#include "windowsx.h"
// функция для управления параметрами создания и уничтожения главного окна
// запуск всех дополнительных элементов окна (если они есть) производится в ней
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM,LPARAM);
// главная функция
34
Рассмотрим, как создать элементарное графическое окно в Windows. Как уже ука-
зывалось выше, главной функцией для разработки такой программы будет WinMain().
Сразу после входа в WinMain() создается и регистрируется класс главного окна прило-
жения. Для этого необходимо заполнить структуру WNDCLASS. Для создания окна ис-
пользуются функции CreateWindow() непосредственно для его создания, ShowWindow()
для визуализации и UpdateWindow() для перерисовки. Все эти функции описаны в файле
windows.h. Рассмотрим структуру WNDCLASS и наиболее значимую функцию Create-
Window() более подробно.
Структура WNDCLASS состоит из 10 полей:
typedef struct tagWNDCLASS
{
UINT cbSize; //размер структуры в байтах
UINT style; //стиль класса окна
WNDPROC lpfnWndProc; // указатель на функцию окна
HINSTANCE hInstance; //дескриптор приложения, которое запускает окно
HICON hIcon; //дескриптор пиктограммы
HCURSOR hCursor; // дескриптор курсора
HBRUSH hbrBackground; // дескриптор кисти для закраски фона
LPCTSTR lpszMenuName; //указатель на строку с именем меню
LPCTSTR lpszClassName; // указатель на строку с именем класса
HICON hIconSm; //дескриптор малой пиктограммы
} WNDCLASS;
Функция CreateWindow() получает на входе 11 параметров:
HWND CreateWindow (
LPCTSTR lpClassName, // зарегистрированное имя класса
LPCTSTR lpWindowName, // имя окна
DWORD dwStyle, // стиль окна
int x, // x -координата позиции окна
int y, // y -координата позиции окна
int nWidth , // ширина окна
int nHeight , // высота окна
HWND hWndParent , // указатель родительского окна
HMENU hMenu , // дескриптор меню, NULL если меню нет
HINSTANCE hInstance , // дескриптор приложения
LPVOID lParam );// данные, которые могут быть переданы создания окна
// NULL если данные не передаются
Для примера рассмотрим исходный текст программы, которая создает элементар-
ное окно в Windows.
#include "windows.h"
#include "windowsx.h"
// функция для управления параметрами создания и уничтожения главного окна
// запуск всех дополнительных элементов окна (если они есть) производится в ней
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM,LPARAM);
// главная функция
34
Страницы
- « первая
- ‹ предыдущая
- …
- 30
- 31
- 32
- 33
- 34
- …
- следующая ›
- последняя »
