Win32編程
阿新 • • 發佈:2017-05-20
toc ext n) mds troy adc 窗口 nap get
#include <windows.h> HINSTANCE hinst; LRESULT CALLBACK MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { switch (uMsg) { case WM_DESTROY: PostQuitMessage(0); return 0; break; case WM_LBUTTONDOWN: MessageBox(hWnd, L"ONDragon", L"ONDragon", MB_OK); break; default: return DefWindowProc(hWnd, uMsg, wParam, lParam); } return 0; } int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int lpCmdShow) { //定義窗口類 WNDCLASSEX wcx; hinst = hInstance; MSG msg; BOOL getMessage; wcx.lpszClassName= L"MainClass"; wcx.cbSize = sizeof(wcx); wcx.style = CS_HREDRAW | CS_VREDRAW; wcx.hInstance = hinst; wcx.lpfnWndProc = MainWndProc; wcx.cbClsExtra = 0; wcx.cbWndExtra = 0; wcx.hIcon = LoadIcon(NULL, IDI_APPLICATION); wcx.hCursor = LoadCursor(NULL, IDC_ARROW); wcx.hbrBackground= (HBRUSH)GetStockObject(WHITE_BRUSH); wcx.lpszMenuName = NULL; wcx.hIconSm = (HICON)LoadImage( hInstance, MAKEINTRESOURCE(5), IMAGE_ICON, GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON), LR_DEFAULTCOLOR); //註冊窗口類 if (!RegisterClassEx(&wcx)) { return 0; } //使用窗口類創建窗口 HWND hWnd = CreateWindow( L"MainClass", L"ONDragon", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hinst, NULL); if (!hWnd) { return 0; } //顯示窗口 ShowWindow(hWnd,lpCmdShow); //立即顯示窗口 UpdateWindow(hWnd); while ( 0 != (getMessage = GetMessage(&msg,NULL,0,0))) { //傳遞個回調函數MainProc TranslateMessage(&msg); DispatchMessage(&msg); } return 0; }
Win32編程