1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
#include "stdafx.h" #include "ca02windows.h" #include "tchar.h" #include <Windows.h>
LRESULT CALLBACK WndProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam){ switch (uMsg) { case WM_CLOSE: ::MessageBox(hwnd, _T("确认关闭吗?"), _T("确认关闭吗?"), MB_YESNO);
::DestroyWindow(hwnd); break; case WM_DESTROY: ::PostQuitMessage(0); break; default: break; } return DefWindowProc(hwnd, uMsg, wParam, lParam);
}
int WINAPI _tWinMain(IN HINSTANCE hInstance,IN HINSTANCE hPrevInstance,IN LPTSTR lpCmdLine,IN int nShowCmd) { const TCHAR* pszClassName = _T("ITWnd"); WNDCLASSEX wcex; wcex.cbSize = sizeof(WNDCLASSEX); wcex.style = CS_HREDRAW | CS_VREDRAW; wcex.lpfnWndProc = WndProc; wcex.cbClsExtra = 0; wcex.cbWndExtra = 0; wcex.hInstance = hInstance; wcex.hIcon = (HICON)::LoadIcon(NULL, IDI_HAND); wcex.hIconSm = (HICON)::LoadIcon(NULL, IDI_APPLICATION); wcex.hbrBackground = (HBRUSH)::GetStockObject(WHITE_BRUSH); wcex.hCursor = (HCURSOR)::LoadCursor(NULL, IDC_ARROW); wcex.lpszMenuName = NULL; wcex.lpszClassName = pszClassName;
BOOL bRet = ::RegisterClassEx(&wcex); if (!bRet){ ::MessageBox(NULL, _T("注册窗口失败"), _T("注册窗口"), MB_OK); return FALSE; }
HWND hwnd = ::CreateWindowEx(0, pszClassName, _T("杨彦星kevin"), WS_VISIBLE | WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL);
if (!hwnd){ ::MessageBox(NULL, _T("创建窗口失败"), _T("创建窗口"), MB_OK); return FALSE;
}
::ShowWindow(hwnd, SW_NORMAL); ::UpdateWindow(hwnd);
MSG msg; while (::GetMessage(&msg,NULL,NULL,NULL)) { ::TranslateMessage(&msg); ::DispatchMessage(&msg);
}
return TRUE;
}
|