APP铺子

游戏攻略

win32窗口应用程序是什么(win32应用程序介绍)

栏目:游戏攻略 日期: 作者:admin 阅读:

初识Win32窗口应用程序(一)

刚接触windows窗口程序记录主要两个函数

1.#include <windows.h>

窗口程序的重要头文件,必须导入

2.WinMain()

窗口主函数入口,此函数负责窗口属性的初始化,显示,更新,和消息分发的

int WINAPI WinMain( HINSTANCE hInstance,//应用程序实例句柄 HINSTANCE hPrevInstance,//上一个应用程序句柄,在win32环境下,参数一般为null LPSTR lpCmdLine, int nShowCmd) ;

3.WindowProc()

此函数是消息处理函数,负责事件处理,比如窗口内容展示,窗口的按钮关闭等

LRESULT CALLBACK WindowProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam);

4.完整示例代码

#include <windows.h>  //消息处理函数LRESULT CALLBACK WindowProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam) {int xPos, yPos;char buf[100];PAINTSTRUCT ps;HDC hdc;switch (uMsg){case WM_CLOSE:DestroyWindow(hwnd); //关闭窗口break;case WM_DESTROY:PostQuitMessage(0);//退出程序break;case WM_KEYDOWN:wsprintf(buf, TEXT("键盘ASCII = %d"), wParam);MessageBox(hwnd, buf, TEXT("键盘"), MB_OK);break;case WM_LBUTTONDOWN:xPos = LOWORD(lParam);yPos = HIWORD(lParam);wsprintf(buf, TEXT("X = %d,Y = %d"), xPos,yPos);MessageBox(hwnd, buf, TEXT("鼠标"), MB_OK);break;case WM_PAINT: hdc = BeginPaint(hwnd, // handle to window&ps); // paint information);TextOut(hdc,0,0,TEXT("text"),strlen("text"));EndPaint(hwnd, &ps);break;default:break;}return DefWindowProc(hwnd, uMsg, wParam, lParam);}int WINAPI WinMain(//窗口主函数入口HINSTANCE hInstance,//应用程序实例句柄HINSTANCE hPrevInstance,//上一个应用程序句柄,在win32环境下,参数一般为nullLPSTR lpCmdLine,int nShowCmd) //最大化 最小化{WNDCLASS wc;wc.cbClsExtra = 0;wc.cbWndExtra = 0;wc.hbrBackground = GetStockObject(WHITE_BRUSH);wc.hCursor = LoadCursor(NULL, IDC_HAND);wc.hIcon = LoadIcon(NULL, IDI_INFORMATION);wc.hInstance = hInstance;wc.lpfnWndProc = WindowProc;wc.lpszClassName = TEXT("WIN");wc.lpszMenuName = NULL;wc.style = 0;RegisterClass(&wc);//注册HWND  hwnd = CreateWindow(wc.lpszClassName, //lpClassNameTEXT("Hello"),   //lpWindowNameWS_OVERLAPPEDWINDOW, //dwStyleCW_USEDEFAULT, //x, CW_USEDEFAULT, //y,CW_USEDEFAULT, //nWidthCW_USEDEFAULT,//nHeightNULL,//hWndParentNULL,//hMenuhInstance,//hInstanceNULL);//lpParamShowWindow(hwnd, SW_SHOWNORMAL);UpdateWindow(hwnd);MSG msg;while (1){if (GetMessage(&msg, NULL, 0, 0) == FALSE) {break;}TranslateMessage(&msg);DispatchMessage(&msg);}  return 0;}

5. Visual Studio代码结构 mWindows.c

初识Win32窗口应用程序(一)

初识Win32窗口应用程序(一)

6.运行效果

初识Win32窗口应用程序(一)

初识Win32窗口应用程序(一)

Thanks

相关资讯

  • win32窗口应用程序是什么(win32应用程序介绍)

    初识Win32窗口应用程序(一)刚接触windows窗口程序记录主要两个函数1.#include <windows.h>窗口程序的重要头文件,必须导入2.WinMain()窗口主函数入口,此函数负责
  • wcg冠军sky介绍(wcg sky是谁)

    中国第一个WCG冠军,魔兽争霸第一人——SKY今天和大家聊一聊中国电竞第一人Sky李晓峰,想必很多老玩家对他的故事已经非常熟悉了,不过一些新同学可能会比较好奇,电竞选
  • xbox360拆解修复(xbox360解决三红问题)

    XBOX360拆解修复:我在厨房解决了万年诟病的三红问题前言微软在XBOX之后又推出了XBOX360电视游戏机,这一款游戏机有着更好的硬件性能,更棒的手柄和数量众多的独占游戏
  • xbox主机破解(xbox破解需要知道哪些事情)

    ban机?Xbox one主机破解你必须知道的几个事情对于Xbox one破解,很多人有不同的意见,比如有些人说,破解只有两种,一种是硬件破解,一种是软件破解,比如现在switch比较通用