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 76 77 78
   | #include <windows.h> #include <strsafe.h>
  LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
  int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR CmdLine, int iCmdShow) { 	static TCHAR szAppName[] = TEXT("MyWindows");	 	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("这个程序需要在Windows NT才能执行!"), szAppName, MB_ICONERROR); 	}
  	hwnd = CreateWindow(szAppName, 		TEXT("快乐小凳凳"), 		WS_OVERLAPPEDWINDOW,	 		CW_USEDEFAULT, 		CW_USEDEFAULT, 		CW_USEDEFAULT, 		CW_USEDEFAULT, 		NULL, 		NULL, 		hInstance, 		NULL 	);
  	ShowWindow(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; 	RECT rect; 	static int cxClient, cyClient; 	TCHAR szBuffer[128];
  	switch (message) 	{ 	case WM_PAINT: 		hdc = BeginPaint(hwnd, &ps); 		GetClientRect(hwnd, &rect); 		cxClient = GetSystemMetrics(SM_CXSCREEN); 		cyClient = GetSystemMetrics(SM_CYSCREEN); 		StringCchPrintf(szBuffer, 128, TEXT("当前显示器的分辨率是: %d * %d px"), cxClient, cyClient); 		DrawText(hdc, szBuffer, -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER); 		EndPaint(hwnd, &ps); 		return 0; 	case WM_DESTROY: 		PostQuitMessage(0);  		return 0; 	}
  	return DefWindowProc(hwnd, message, wParam, lParam); }
   |