Windows 编程[9] - WM_CLOSE 消息
program Project1;usesWindows, Messages;{供 WM_CLOSE 消息调用的自定义过程} procedure OnClose(h: HWND); beginif IDOK = MessageBox(h, '确认关闭吗?', '提示', MB_OKCANCEL) thenDestroyWindow(h); end;function WndProc(wnd: HWND; msg: UINT; wParam: Integer; lParam: Integer): Integer; stdcall; beginResult := 0;case msg ofWM_CLOSE : OnClose(wnd); {在收到 WM_CLOSE 消息时调用自定义的 OnClose 过程}WM_DESTROY: PostQuitMessage(0);elseResult := DefWindowProc(wnd, msg, wParam, lParam);end; end;function RegMyWndClass: Boolean; varcls: TWndClass; begincls.style := CS_HREDRAW or CS_VREDRAW;cls.lpfnWndProc := @WndProc;cls.cbClsExtra := 0;cls.cbWndExtra := 0;cls.hInstance := HInstance;cls.hIcon := 0;cls.hCursor := LoadCursor(0, IDC_ARROW);cls.hbrBackground := HBRUSH(COLOR_WINDOW + 1);cls.lpszMenuName := nil;cls.lpszClassName := 'MyWnd';Result := RegisterClass(cls) <> 0; end;{程序入口} consttit = 'New Form';ws = WS_OVERLAPPEDWINDOW;x = 100; y = 100; w = 300; h = 180; varhWnd: THandle;Msg : TMsg; beginRegMyWndClass;hWnd := CreateWindow('MyWnd', tit, ws, x, y, w, h, 0, 0, HInstance, nil);ShowWindow(hWnd, SW_SHOWNORMAL);UpdateWindow(hWnd);while(GetMessage(Msg, 0, 0, 0)) dobeginTranslateMessage(Msg);DispatchMessage(Msg);end; end.
转载于:https://www.cnblogs.com/del/archive/2008/04/18/1160505.html
Windows 编程[9] - WM_CLOSE 消息相关推荐
- windows编程之鼠标消息总结
1 确定鼠标是否存在:fMouse = GetSystemMetrics (SM_MOUSEPRESENT) ; 2 获取鼠标上按键数目:cButtons = GetSystemMetrics (SM ...
- Windows 编程常用键盘消息命令
每一个点都很值得研究,这都是皮毛. 1.扫描码与虚拟码 键盘从最早的83键发展到当今流行的101键,虽然增加了许多键,但按键的基本操作保持不变,即按下一个键或释放一个键.按 ...
- Windows 编程[8] - WM_PAINT 消息
本例效果图: program Project1;usesWindows, Messages;{供 WM_PAINT 消息调用的自定义过程} procedure OnPaint(h: HWND); co ...
- Windows 编程[11] - WM_SIZE 消息
本例效果图: program Project1;usesWindows, Messages;{供 WM_SIZE 消息调用的自定义过程} procedure OnSize(h: HWND); varR ...
- 如何使对话框中接收到WM_CHAR消息(Windows编程)
我们大家都知道,对话框是有的时候捕获不到WM_CHAR消息的.比如,你想使对话框里的Edit控件所键入的全部变为大写.我们毫不犹豫的写到: #include //Declare the Dial ...
- windows编程,消息函数中拦截消息的问题
很多年没有写windows窗口程序了,今天自制基于vulkan的程序时遇到了一些问题,部分代码如下: LRESULT CALLBACK XWindow::WndProc(HWND hWnd, UINT ...
- Windows编程 从消息窗口到基本窗口 游戏循环窗口框架的简单实现
版本:VS2015 语言:C++ 本来想昨天写个消息窗口的内容,讲一些好玩的东西,不过没有时间了,就放到一起了. 今天正好把书的第二章看完了,感觉良好,Windows的编程确实难度要高,一下子会有一大 ...
- windows编程中wParam和lParam消息
windows编程中wParam和lParam消息 1.WM_PAINT消息,LOWORD(lParam)是客户区的宽,HIWORD(lParam)是客户区的高. 2 滚动条WM_VSCROLL或WM ...
- Windows编程捕获特定窗口及键盘鼠标消息模拟
Windows编程捕获特定窗口及键盘鼠标消息模拟 一.简介 二.使用到的API简介 三.获取Windows记事本的编辑区窗口的句柄并模拟输入操作 1.分析 2.代码一 3.代码二 四.后记 一.简介 ...
最新文章
- 小米4公布会视频地址
- [trustzone]-ARM Core的扩展和ELx级别的切换过程
- 三星S5 电信版(G9009D)Android 5.0系统,root教程【亲测可行】
- nodejs常用模块-url
- 浏览器的同源策略与跨域
- 基于ssm框架和freemarker的商品销售系统
- cv mat保存图片_(七)神秘的Mat
- python中os.path.join()的循环用法_Python os.path.join()用法及代码示例
- NGINX 502 Bad Gateway 用upstream解决方法
- IBM大中华区总架构师讲述话说程序员的职业生涯
- mapreduce 的partitioner,GroupComparator,KeyComparator,分布式缓存使用示例
- 设计模式之禅(第2版)PDF资源分享
- 360主机卫士正式上线
- 10个人用的云服务器要什么配置文件,10个人用的云服务器要什么配置文件
- 【gradle Composing builds】gradle依赖管理Composing builds之杂症-快速同步
- Android辅助功能【Accessibility】入门简介及使用
- 批处理bat提示 文件名、目录名或卷标语法不正确
- 基于Java+SpringBoot+Thymeleaf+Mysql家政服务预约系统设计与实现
- 如何为linux kernel贡献代码
- 文件编辑(vi/vim)
热门文章
- 微型计算机有什么电路组成,第二章 微型计算机的基本电路组成
- oracle 10.2.0.4 rac emca,ORACLE 10G RAC升级10.2.0.4报错
- c# 字典按ascii 排序_利用工作表函数,对字典键进行排序并给出对应重复个数
- java游戏脱逃_App Store 上的“冒险的逃离筏船”
- str.split() 与 str.split(‘ ‘)区别
- 融云发送图片消息_发送消息
- MySQL面试题 | 附答案解析(二)
- 前端HTML渲染带箭头的线
- 机器学习中的数学基础(4.1):支持向量机Support Vector Machine(SVM)
- 智慧工地-基于深度学习yolov3的安全帽检测以及安全帽检测数据集(1)