源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

win32 api实现简单的消息窗口示例

  • 时间:2022-04-28 14:16 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:win32 api实现简单的消息窗口示例
[u]复制代码[/u] 代码如下:
#include<windows.h> LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM); int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow) { static TCHAR szAppName[]=TEXT("HelloWin"); 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("This program requires Windows NT!"),szAppName,MB_ICONERROR);    return 0; } hwnd=CreateWindow(szAppName,TEXT("The hello program"),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; switch(message) { case WM_CREATE:  PlaySound(TEXT("hellowin.wav"),NULL,SND_FILENAME|SND_ASYNC);  return 0; case WM_PAINT:  hdc=BeginPaint(hwnd,&ps);  GetClientRect(hwnd,&rect);  DrawText(hdc,TEXT("HELLO WORLD!"),-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); }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部