Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<windows.h>
- LRESULT CALLBACK WProc(HWND hwnd, UINT msg, WPARAM wp, LPARAM lp)//Функция вызывается системой извне
- {
- PAINTSTRUCT ps;
- HDC hdc;
- switch(msg)
- {
- case WM_DESTROY: PostQuitMessage(0); return 0; //При закрытии окошка
- case WM_PAINT:
- hdc=BeginPaint(hwnd, &ps); //Перерисовка окна при сворачивании или перетаскивании за экран
- SetPixel(hdc, 15, 25, RGB(100, 0, 0)); //Закрасить пиксель
- Rectangle(hdc, 10,20,150,100); //Кисть(рамка) и цвет заливки по умолчанию,координаты от левого верхнего угла
- LineTo(hdc, 100, 200); //Нарисовать прямую
- EndPaint(hwnd, &ps);
- return 0;
- default: return DefWindowProc(hwnd, msg, wp, lp); //При остальных событиях
- }
- }
- int __stdcall WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
- {
- WNDCLASS wc; //Создать окно. Класс окна.
- memset(&wc, 0, sizeof(WNDCLASS)); //Обнуления в памяти всего что связано с wc
- wc.style = CS_HREDRAW | CS_VREDRAW; //Стиль окна
- wc.lpszClassName = "MyWindow1";//Имя класса
- wc.hInstance = hInstance;//Привязка окна к приложению, к потоку
- wc.hCursor = LoadCursor(NULL, IDC_ARROW); //Курсор окошка
- wc.hIcon = LoadIcon(NULL, IDI_APPLICATION); //Иконка окошка
- wc.lpfnWndProc = WProc; //Указывается адрес функции, которая вызывается, когда приходит какое-либо событие
- wc.hbrBackground=GetSysColorBrush(COLOR_3DFACE); //Цвет кисти, которой закрашивается фон окна
- RegisterClass(&wc); //Регистрируем этот класс.
- HWND hwnd=CreateWindow("MyWindow1", "MyWindow!", WS_OVERLAPPEDWINDOW, 50, 50, 200, 300, NULL, NULL, hInstance, NULL); //Возвращает идентификатор окна(дескриптор окна). Аргументы: Название класса, имя окошка, стиль окна, положение экрана икс, положение экрана игрек, weight, height
- ShowWindow(hwnd, nShowCmd);
- MSG msg; //Структура message
- while (GetMessage(&msg, NULL, 0, 0)) //Бесконечный цикл
- DispatchMessage(&msg);
- return 0;
- }
Add Comment
Please, Sign In to add comment