以前列出了計算機圖形學的計劃,如今開始這一階段的學習,首先是Windows窗口的建立。html
建立windows窗口windows
環境: 1. Visual Studio 2015函數
新建項目學習
建立工程項目完成,肯定爲窗口:ui
添加MainWindowDemo.cpp文件spa
/* 實現窗口建立的六步驟: 第一步:建立入口函數WinMain 第二步:註冊窗口類 第三部:實現回調函數的功能 第四步:顯示窗口 第五步:更新窗口 第六步:消息循環 */ #include "windows.h" //回調函數 LRESULT CALLBACK WinProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { switch (uMsg) { case WM_CREATE: { MessageBox(NULL, L"即將建立一個窗口!", L"Infor", MB_OK); } break; case WM_DESTROY: { PostQuitMessage(0); } break; } return DefWindowProc(hWnd, uMsg, wParam, lParam); } //建立入口函數 int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int ShowCmd) { HWND hWnd = 0; MSG nMsg = { 0 }; //註冊窗口類 WNDCLASS cs = { 0 }; cs.cbClsExtra = 0; cs.cbWndExtra = 0; cs.hbrBackground = (HBRUSH)(COLOR_WINDOW + 2); cs.hCursor = NULL; cs.hIcon = NULL; cs.hInstance = hInstance; cs.lpfnWndProc = (WNDPROC)WinProc; cs.lpszClassName = L"Main"; cs.lpszMenuName = NULL; cs.style = CS_VREDRAW | CS_HREDRAW; RegisterClass(&cs);//實現註冊窗口 //建立窗口 hWnd = CreateWindow(L"Main", L"Windows", WS_OVERLAPPEDWINDOW, 200, 200, 500, 500, NULL, NULL, hInstance, NULL); //顯示窗口 ShowWindow(hWnd, SW_SHOW); //更新窗口 UpdateWindow(hWnd); //消息循環 while (GetMessage(&nMsg, 0, NULL, NULL)) { TranslateMessage(&nMsg); DispatchMessage(&nMsg); } return 0; }