今天Bili发现网上好多MFC代码都不能用,给大家分享一个简单的MFC窗口语言:

学的不仅仅是技术,更是梦想

学的不仅仅是技术,更是梦想

学的不仅仅是技术,更是梦想

学的不仅仅是技术,更是梦想

复制代码ing:#include//底层实现窗口的头文件//6.处理窗口过程//CALLBACK 代表_stdcall 参数的传递顺序:从右到左依次入栈,并且函数返回前清空堆栈LRESULTCALLBACK WindowProc(HWND hand,//消息所属窗口句柄UINT uMsg, //具体消息名称 WM_XXXX消息名WPARAM wParam, //键盘附加消息LPARAM lParam) { //鼠标附加消息switch (uMsg){case WM_CLOSE://所有以XXXXWindow为结尾的方法,都不会进入到消息队列中,而是直接执行DestroyWindow(hand);//发送另一个消息WM_DESTROYbreak;case WM_DESTROY:PostQuitMessage(0);break;case WM_LBUTTONDOWN://鼠标左键按下{int xPos = LOWORD(lParam);int yPos = HIWORD(lParam);char buf[1024];wsprintf(buf, TEXT("x = %d,y = %d"),xPos,yPos);MessageBox(hand, buf, TEXT("按下鼠标左键"), MB_OK);break;}case WM_KEYDOWN://键盘{MessageBox(hand, TEXT("键盘"), TEXT("按下键盘"), MB_OK);break;}case WM_PAINT://画图{PAINTSTRUCT ps;//画图结构体HDC hdc = BeginPaint(hand, &ps);TextOut(hdc, 100, 100,TEXT("hello"), strlen("hello"));EndPaint(hand, &ps);break;}default:break;}//返回值用默认处理方式return DefWindowProc(hand, uMsg, wParam, lParam);}/*程序入口函数_In_ HINSTANCE hInstance,//应用程序实例句柄_In_opt_ HINSTANCE hPrevInstance,//上一个应用程序句柄,在WIN32环境下一般为NULL,不起作用了_In_ LPSTR lpCmdLine,//char * argv[]_In_ int nShowCmd//显示命令 最大化、最小化、正常WINAPI 代表_stdcall 参数的传递顺序:从右到左依次入栈,并且函数返回前清空堆栈*/int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) {/*1.设计窗口2.注册窗口3.创建窗口4.显示和更新5.通过循环取消息6.处理消息(窗口过程)*///1.设计窗口WNDCLASS wc;wc.cbClsExtra = 0;//类的额外的内存wc.cbWndExtra = 0;//窗口额外的内存wc.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH); //设置背景wc.hCursor = LoadCursor(NULL, IDC_HAND);//设置光标,如果第一个参数为null,代表使用系统提供的光标wc.hIcon = LoadIcon(NULL, IDI_ERROR);//图标,如果第一个参数为null,代表使用系统提供的图标wc.hInstance = hInstance; //应用程序的实例句柄,传入winmain的形参即可wc.lpfnWndProc = WindowProc;//回调函数 窗口过程wc.lpszClassName = TEXT("WIN");//指定窗口名称wc.lpszMenuName = NULL;//菜单名称wc.style = 0;//显示风格,0代表默认//2.注册窗口RegisterClass(&wc);//3.创建窗口/*lpszClassName,//类名lpWindowName,//标题名dwStyle,//风格 WC_OVERLAPPEDWINDOWx, //坐标 CW_USERDEFAULTy, //坐标nWidth,//宽nHeight,//高hWndParent, //父窗口 nullhMenu,//菜单 nullhInstance, //实例句柄lpParam//附加值 鼠标附加值*/HWND hwnd = CreateWindow(wc.lpszClassName, TEXT("WINDOWS"), WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL);//4.显示和更新ShowWindow(hwnd, SW_SHOWNORMAL);UpdateWindow(hwnd);/*HWND hwnd;//主窗口句柄UINT message;//具体消息名称WPARAM wParam;//附加消息 键盘消息LPARAM lParam;//附加消息 鼠标消息DWORD time;//消息产生时间POINT pt;*///附加消息 鼠标消息 x,y//5.通过循环取消息MSG msg;/*_Out_ LPMSG lpMsg,//消息_In_opt_ HWND hWnd,//捕获窗口 填null表示捕获所有窗口_In_ UINT wMsgFilterMin,//最大和最小的过滤消息 一般填0_In_ UINT wMsgFilterMax);*/while (GetMessage(&msg, NULL, 0, 0)){/*if (GetMessage(&msg, NULL, 0, 0) == FALSE) {break;}*///翻译消息TranslateMessage(&msg);//不是false//分发消息DispatchMessage(&msg);}return 0;}

按键精灵通过句柄获取窗口坐标_使用visual studio 2019 创建简单的Windows窗口「Win32」...相关推荐

  1. 使用visual studio 2019 创建简单的MFC窗口「使用C++」

    ```cpp 使用visual studio 2019 创建过程请参考Bili的上一篇文章⬇⬇ →!使用visual studio 2019 创建简单的MFC窗口「使用底层的C语言」 划重点:项目-& ...

  2. 按键精灵通过句柄获取窗口坐标_按键精灵怎么获取同名窗口的句柄

    公告: 为响应国家净网行动,部分内容已经删除,感谢读者理解. 话题:按键精灵怎么获取同名窗口的句柄回答:命令名称: Search 遍历符合窗口 命令功能: 遍历符合窗口标题的句柄保存到数组里 命令参数 ...

  3. 按键精灵通过句柄获取窗口坐标_大漠插件后台找图、自动获取坐标窗口句柄鼠标多点左单击脚本...

    大漠插件后台找图.自动获取坐标窗口句柄鼠标多点左单击 脚本 一.准备工作 第一步:下载大漠插件.解压,运行"注册大漠插件到系统.bat",把全部东东都复制到按键精灵的plugin目 ...

  4. c++ 添加按钮_使用 Visual Studio 2019 批量添加代码文件头

    应用场景介绍 在我们使用一些开源项目时,基本上都会在每个源代码文件的头部看到一段版权声明.一个项目或解决方案中源代码文件的个数少则几十,多则几千甚至更多,那么怎么才能给这么多文件方便地批量添加或者修改 ...

  5. CWnd类与Windows窗口的关系-3、CWnd类如何封装Windows窗口

    现在,可以比较深入地对CWnd类的封装机制进行剖析了. 在建立窗口句柄映射方面,CWnd使用了一个未公开的类CHandleMap进行管理.使用CWnd及派生类创建窗口时,建立了句柄映射,在窗口销毁时删 ...

  6. 【Visual Studio 2019】创建 MFC 桌面程序 ( 安装 MFC 开发组件 | 创建 MFC 应用 | MFC 应用窗口编辑 | 为按钮添加点击事件 | 修改按钮文字 | 打开应用 )

    文章目录 一.安装 MFC 开发组件 二.创建 MFC 应用 三.MFC 应用窗口编辑 四.为按钮添加点击事件 五.修改按钮文字 六.打开系统其它应用 七.博客源码 一.安装 MFC 开发组件 打开 ...

  7. windows中文字体_如何让 Windows 变「好看」?

    我想,大多数用 Windows 电脑的用户或多或少都曾羡慕过苹果 macOS 电脑简洁的桌面吧?至少我在换到 macOS 之前是羡慕的,并且曾多次尝试让自己的 Windows 电脑变得像 macOS ...

  8. Microsoft Visual Studio 2019 美化之——透明化窗口 Microsoft Visual Studio 2019 C/C++ Windows 下重量级编辑器 Editor

    Microsoft Visual Studio 2019 美化之--透明化窗口 Microsoft Visual Studio 2019 C/C++ Windows 下重量级编辑器 ?Editor? ...

  9. python调用按键精灵插件_按键精灵自动寻路系列换算地图坐标寻路法

    金猪脚本(原飞猪脚本)以按键精灵教学为主,涉及UiBot,Python,Lua等脚本编程语言,教学包括全自动办公脚本,游戏辅助脚本,引流脚本,网页脚本,安卓脚本,IOS脚本,注册脚本,点赞脚本,阅读脚 ...

最新文章

  1. Linux网卡重启后会有哪些更新,问题:linux系统经常出现断网的情况,重启之后系统恢复正常...
  2. 区块链共识机制分析——论PoW,PoS,DPos和DAG的优缺点
  3. 监督学习 | 线性回归 之正则线性模型原理及Sklearn实现
  4. 深入解读Linux进程调度系列(7)——调度与CPU隔离
  5. JAVA回调函数简单讲解 CallBack
  6. SVM实现鸢尾花分类
  7. 解决VScode输入 英文感叹号+tab键 无法自动生成HTML模板
  8. ubuntu 16 打开 dmg 文件
  9. html鼠标在ie上抖动,IE下CSS3动画抖动
  10. 微信小游戏之飞机大战解析
  11. 华为云Classroom聚焦人才数字化转型,引领智慧教育改革新模式
  12. TTSR:用Transformer来实现端到端的超分辨率任务 | CVPR2020
  13. Linux系统下怎么查询自己的ip和port
  14. 腾讯云服务器部署TomCat出现404
  15. river歌曲表达的意思_lost rivers是什么意思什么梗 歌曲含义与背后故事揭秘
  16. Android九宫格解锁的实现
  17. 使用YMIR生产基于yolov5的头盔检测模型
  18. 什么是敏捷性能合弄结构(APH)?
  19. Python的过去和现在
  20. 代理模式Proxy——读书笔记

热门文章

  1. python的unicode_python的unicode及其编码解码
  2. python 网关控制家居_在树莓派上搭建智能家居网关
  3. 【Paper】2006_Time-Optimal Control of a Hovering Quad-Rotor Helicopter
  4. 【Arduino】按键按下执行不同模式程序
  5. Android init.rc文件解析过程详解(二)
  6. 【光斑定位】空间激光通信、光斑定位、CCD、光斑定位——13000字
  7. 浅谈上、下拉电阻的作用/什么是拉电流和灌电流[转]
  8. percona-toolkit之pt-kill:杀掉mysql查询或连接
  9. 寻根求源 U盘的9个典型故障
  10. 域名解析的记录类型区别