|
莫问前程有愧,只求今生无悔
- #include <Windows.h>
- LRESULT CALLBACK Function(HWND hWnd,
- UINT uMsg,
- WPARAM wParam,
- LPARAM lParam
- )
- {
- switch (uMsg)
- {
- case WM_LBUTTONDOWN: //鼠标左键按下了
- MessageBox(hWnd, TEXT("你按下了左键"), TEXT("键盘鼠标测试"), MB_OKCANCEL);
- break;
- case WM_RBUTTONDOWN:
- MessageBox(hWnd, TEXT("你按下了右键"), TEXT("键盘鼠标测试"), MB_OKCANCEL);
- break;
- case WM_LBUTTONDBLCLK:
- MessageBox(hWnd, TEXT("你双击了左键"), TEXT("键盘鼠标测试"), MB_OKCANCEL);
- break;
- case WM_RBUTTONDBLCLK:
- MessageBox(hWnd, TEXT("你双击了右键"), TEXT("键盘鼠标测试"), MB_OKCANCEL);
- break;
- case WM_DESTROY:
- PostQuitMessage(2);//或者0 退出
- break;
- case WM_PAINT:
- {
- PAINTSTRUCT ps;
- HDC dc = BeginPaint(hWnd, &ps);
- TCHAR* p =(TCHAR*)L"hello VC驿站";
- TextOut(dc, 30, 30, p, wcslen(p));
- EndPaint(hWnd, &ps);
- break;
- }
-
- case WM_CREATE:
- MessageBox(hWnd, TEXT("hello VC驿站"), TEXT("hello"), MB_OKCANCEL);
- break;
- case WM_CLOSE:
- /*if (IDYES == MessageBox(hWnd, L"是否退出?", L"提示:", MB_YESNO))
- {
- DestroyWindow(hWnd);
- }
- else
- {
- return 0;
- }*/
- /* if (IDNO == MessageBox(hWnd, L"是否退出?", L"提示:", MB_YESNO))
- {
- return 0;
- }
-
- break;*/
-
- default:
- return DefWindowProc(hWnd, uMsg, wParam, lParam);
- }
- return 0;
- }
- int WINAPI WinMain(
- _In_ HINSTANCE hInstance,
- _In_opt_ HINSTANCE hPrevInstance,
- _In_ LPSTR lpCmdLine,
- _In_ int nShowCmd
- )
- {
- //定义窗口入口winmain
- //创建一个窗口
- //设计一个窗口类wndclass(给成员变量赋值)
- WNDCLASS wc;
- wc.cbClsExtra = 0; //类的附加信息
- wc.cbWndExtra = 0; //窗口附加信息
- wc.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);//背景色
- //wc.hCursor = NULL; 系统默认
- wc.hCursor = LoadCursor(NULL, IDC_APPSTARTING);//加载系统默认光标
- wc.hIcon = LoadIcon(NULL, IDI_WARNING);//加载系统默认的图标
- wc.hInstance = hInstance;//应用程序实例
- wc.lpfnWndProc = Function; //窗口过程函数名字 消息处理函数(重要)
- wc.lpszClassName = TEXT("abc");//类名
- wc.lpszMenuName = NULL;//菜单名
- wc.style = CS_HREDRAW|CS_VREDRAW; //显示风格
- //注册窗口类
- RegisterClass(&wc);
- //创建窗口
- HWND hWnd = CreateWindow(TEXT("abc"), TEXT("hello windows"), WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL);
- //显示和更新
- ShowWindow(hWnd, SW_SHOWNORMAL);
- UpdateWindow(hWnd);
- //消息循环
- MSG msg;
- while (GetMessage(&msg, NULL, 0, 0))
- {
- //翻译工作
- //虚拟键盘转换标准字符WM_CHAR
- TranslateMessage(&msg);
- //给系统分发消息
- DispatchMessage(&msg);
- }
- //窗口过程函数
- return msg.wParam;
- }
复制代码
|
上一篇: 拷贝构造函数求解下一篇: win32--mfc窗口创建流程学习记录
|