用win32控制台应用程序绘制一个小房子
生活随笔
收集整理的這篇文章主要介紹了
用win32控制台应用程序绘制一个小房子
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
環(huán)境:Visual Studio 2013
繪制小房子就用了畫矩形和直線的函數(shù):
?
#include <windows.h> #include <stdlib.h> #include <string.h> #include <tchar.h> LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow) {static TCHAR szAppName[] = TEXT("HelloWin");HWND hwnd;MSG msg;WNDCLASS wndclass;wndclass.style = CS_HREDRAW | CS_VREDRAW;wndclass.lpfnWndProc = WndProc;wndclass.cbClsExtra = 0;wndclass.cbWndExtra = 0;wndclass.hInstance = hInstance;wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION);wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);wndclass.lpszMenuName = NULL;wndclass.lpszClassName = szAppName;if (!RegisterClass(&wndclass)){MessageBox(NULL, TEXT("This program requires Windows NT!"),szAppName, MB_ICONERROR);return 0;}hwnd = CreateWindow(szAppName, // window class nameTEXT("The Hello Program"), // window captionWS_OVERLAPPEDWINDOW, // window styleCW_USEDEFAULT, // initial x positionCW_USEDEFAULT, // initial y positionCW_USEDEFAULT, // initial x sizeCW_USEDEFAULT, // initial y sizeNULL, // parent window handleNULL, // window menu handlehInstance, // program instance handleNULL); // creation parametersShowWindow(hwnd, iCmdShow);UpdateWindow(hwnd);while (GetMessage(&msg, NULL, 0, 0)){TranslateMessage(&msg);DispatchMessage(&msg);}return msg.wParam; }LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) {HDC hdc;PAINTSTRUCT ps;switch (message){case WM_CLOSE:DestroyWindow(hwnd);break;case WM_DESTROY:PostQuitMessage(0);break;case WM_PAINT: hdc = BeginPaint(hwnd, &ps); //1Rectangle(hdc,100,100,300,250); // 2Rectangle(hdc,300,100,380,250); // 2//畫窗Rectangle(hdc,120,120,150,150);Rectangle(hdc,150,120,180,150);Rectangle(hdc,120,150,150,180);Rectangle(hdc,150,150,180,180);//畫門Rectangle(hdc,200,160,250,250);//畫屋頂MoveToEx(hdc,140,20,NULL); //1LineTo(hdc, 340, 20); //2MoveToEx(hdc,140,20,NULL); //1LineTo(hdc, 100, 100); //2MoveToEx(hdc,340,20,NULL); //1LineTo(hdc, 300, 100); //2MoveToEx(hdc,100,100,NULL); //1LineTo(hdc, 300, 100); //2MoveToEx(hdc,340,20,NULL); //1LineTo(hdc, 380, 100); //2EndPaint(hwnd, &ps); // 3break; default:return DefWindowProc(hwnd, message, wParam, lParam);}return 0; }?
《新程序員》:云原生和全面數(shù)字化實踐50位技術專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的用win32控制台应用程序绘制一个小房子的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C#winform实现鼠标响应左键按下,
- 下一篇: 用C++的类重载高精度加法,乘法和等于符