Visual C++面向对象与可视化编程

2023-09-25 21 0

输出

#include<windows.h>//窗口处理函数WndProc()的声明
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);//主函数,程序的入口,相当于之前的main()函数
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow)
{static char szAppName[] = "HelloWin";HWND hwnd;MSG msg;WNDCLASS wndclass;//WNDCLASSEX也行,会多几个分量,配合RegisterClassEX使用//设置WNDCLASS结构体,为下一步调用RegisterClass()函数做准备wndclass.style = CS_HREDRAW | CS_VREDRAW;//支持重绘,不能为0wndclass.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, "This program requires Windows NT!",szAppName, MB_ICONERROR);return 0;}//调用CreateWindow()函数创建窗体hwnd = CreateWindow (szAppName,                  // window class name"The Windows Program",		// window captionWS_OVERLAPPEDWINDOW,        // window styleCW_USEDEFAULT,              // initial x positionCW_USEDEFAULT,              // initial y positionCW_USEDEFAULT,              // initial x sizeCW_USEDEFAULT,              // initial y sizeNULL,                       // parent window handleNULL,                       // window menu handlehInstance,                  // program instance handleNULL) ;                     // creation parameters//显示和更新窗口ShowWindow(hwnd, iCmdShow);UpdateWindow(hwnd);//消息循环,不停接收消息直至收到WM_QUIT消息后,跳出循环,程序结束while (GetMessage(&msg, NULL, 0, 0))//如果函数取得WM_QUIT之外的其他消息,返回非零值。如果函数取得WM_QUIT消息,返回值是零{TranslateMessage(&msg);//翻译消息,将按键消息转换为字符消息DispatchMessage(&msg);//以此消息为参数转发给相应的窗口消息处理程序}return msg.wParam;
}//窗口处理函数,函数格式固定,函数名无所谓
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{//Code here!HDC         hdc ;PAINTSTRUCT ps ;RECT        rect ;//分支结构,处理各种消息switch (message){//绘图,很多情况下会被调用case WM_PAINT:hdc = BeginPaint (hwnd, &ps) ;GetClientRect (hwnd, &rect) ;DrawText (hdc, TEXT ("Hello, Windows!"), -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;EndPaint (hwnd, &ps) ;return 0 ;//用户点击关闭窗体按钮时触发case WM_DESTROY:PostQuitMessage (0) ;//发出WM_QUIT消息,终止消息循环return 0 ;}//缺省采用系统消息默认处理函数return DefWindowProc (hwnd, message, wParam, lParam) ;	
}

运行截屏

 

代码编程
赞赏

相关文章

JAVA WEB 用户进入企业邮箱,要求登录成功后需要在空间首页显示“欢迎你xxx”的字样;登录失败后,返回到登录界面,重新登录。对邮箱格式要进行表单校验(使用正则表达式完成)
system表空间满登陆失败
oracle怎么释放undo空间,如何回缩Undo表空间 释放过度占用空间
数商云食品行业解决方案:新技术加持食品行业,为企业快速发展提供有力支撑
星期零斩获2021新消费领域“投资界50强企业”和“中国食品工业创新品牌”奖项
2022-2028年中国食品产业园区行业市场运行格局及发展策略分析报告