学习 Message(3): 响应 WM_LBUTTONDOWN 消息
代码文件:
unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls;typeTForm1 = class(TForm)Memo1: TMemo;procedure FormCreate(Sender: TObject);procedure FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);protected{这句的输入方法: Ctrl+空格; 输入 moused 确认; 然后执行 Shift+Ctrl+C}procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X: Integer; Y: Integer); override;{这句的输入方法: Ctrl+空格; 输入 wmlbuttondo 确认; 然后执行 Shift+Ctrl+C}procedure WMLButtonDown(var Message: TWMLButtonDown); message WM_LBUTTONDOWN;end;varForm1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject); beginMemo1.Clear; end;{响应 WM_LBUTTONDOWN 消息的方法 1: OnMouseDown 事件} procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer); beginMemo1.Lines.Add('OnMouseDown'); end;{响应 WM_LBUTTONDOWN 消息的方法 2: 覆盖父类的 MouseDown 方法} procedure TForm1.MouseDown(Button: TMouseButton; Shift: TShiftState; X,Y: Integer); begininherited; {可以去掉或下移这句再试}Memo1.Lines.Add('MouseDown'); end;{响应 WM_LBUTTONDOWN 消息的方法 3: 直接使用消息方法} procedure TForm1.WMLButtonDown(var Message: TWMLButtonDown); beginMemo1.Lines.Add('WM_LBUTTONDOWN');inherited; {可以去掉或上移这句再试} end;end.
窗体文件:
object Form1: TForm1Left = 0Top = 0Caption = 'Form1'ClientHeight = 123ClientWidth = 233Color = clBtnFaceFont.Charset = DEFAULT_CHARSETFont.Color = clWindowTextFont.Height = -11Font.Name = 'Tahoma'Font.Style = []OldCreateOrder = FalseOnCreate = FormCreateOnMouseDown = FormMouseDownPixelsPerInch = 96TextHeight = 13object Memo1: TMemoLeft = 0Top = 0Width = 137Height = 123Align = alLeftLines.Strings = ('Memo1')ScrollBars = ssVerticalTabOrder = 0ExplicitHeight = 206end end
后面还有更多响应消息的办法.
转载于:https://www.cnblogs.com/del/archive/2008/10/24/1319062.html
学习 Message(3): 响应 WM_LBUTTONDOWN 消息相关推荐
- Windows消息机制学习笔记(三)—— 消息的接收与分发
Windows消息机制学习笔记(三)-- 消息的接收与分发 要点回顾 消息循环 消息队列 消息的接收 GetMessage 实验1:理解GetMessage 第一步:编译并运行程序A 第二步:编译并运 ...
- Visual C++——无法响应WM_LBUTTONDBLCLK消息(鼠标左键双击)问题解决方案
问题描述 在建立win32窗口项目的时候,发现窗口无法响应WM_LBUTTONDBLCLK(鼠标左键双击)消息. MSDN https://docs.microsoft.com/en-us/previ ...
- Win32汇编学习(7):鼠标输入消息
这次我们将学习如何在我们的窗口过程函数中处理鼠标按键消息.例子演示了如何等待鼠标左键按下消息,我们将在按下的位置显示一个字符串. 理论: 和处理键盘输入一样,WINDOWS将捕捉鼠标动作并把它们发送到 ...
- Ajax的五种接收响应头消息(常用)
学习本文你得先了解php与Ajax 我的PHP初探 Ajax的了解与应用 五种响应头消息 1. textt/plain 字符串 服务端的消息响应头:header("Content-Type: ...
- 【安卓学习笔记】Android Handler 消息机制探究
一.概述 1.android消息机制的含义: Android消息机制,其实指的就是 Handler 的运行机制,而 Handler 要正常运作,又需要底层的 MessageQueue , Looper ...
- Windows消息机制学习笔记(一)—— 消息队列
Windows消息机制学习笔记(一)-- 消息队列 基本概念 实验一:使用代码画出最简单窗口 第一步:编译并运行以下代码 第二步:查看运行结果 第三步:使用其它窗口对其进行覆盖,观察效果 总结 消息队 ...
- JMS : Java Message Service (Java消息服务)之一 [转]
为什么80%的码农都做不了架构师?>>> 1 引言 1.1 编写目的 本文作为B2bi项目中开源产品JORAM的使用指导文档,旨在帮助项目组人员方便明了的进行JMS模块的详细设 ...
- MSMQ(MicroSoft Message Queue,微软消息队列)
MSMQ(MicroSoft Message Queue,微软消息队列)是在多个不同的应用之间实现相互通信的一种异步传输模式,相互通信的应用可以分布于同一台机器上,也可以分布于相连的网络空间中的任一位 ...
- MFC对话框程序中添加工具栏及工具栏上的Button响应UPDATE_COMMAND_UI消息
对话框中添加工具栏及工具栏上的Button响应UPDATE_COMMAND_UI消息 在对话框程序中添加工具栏其实很简单,网上能找到很多的例子.一般的步骤就是:1.在资源中添加工 具栏资源:2.在对话 ...
最新文章
- 不对全文内容进行索引的 Loki 到底优秀在哪里
- Mysql和Hadoop+Hive有什么关系?
- tableau可视化数据分析60讲(二)-tableau入门篇之各模块功能介绍
- 第四范式连续两年入选CB Insights全球AI百强榜
- [C#.NET 拾遗补漏]08:强大的LINQ
- .NET Core开发实战(第12课:配置变更监听)--学习笔记
- nginx php大文件上传,Nginx+PHP上传大文件设置
- perl6 HTTP::UserAgent (2)
- php redius,Linux下Redius的安装与部署详解
- 中国碳酸锰(CAS+598-62-9)市场趋势报告、技术动态创新及市场预测
- 接手线上Mysql服务器,我们需要做什么?
- 11.4.2 内存映射的相关接口
- php 去零取整,php取整的几种方法
- 10个超漂亮的CSS 3D特效
- 微信分享报错errMsg: “updateAppMessageShareData:fail, the permission value is offline verifying“
- git恢复修改的文件
- libcurl 库的编译
- 高斯朴素贝叶斯分类的原理解释和手写代码实现
- IT项目经理的大项目售前、售中和售后感悟
- 邀好友赢大奖!快来抽取你的 2019 新年上上签!
热门文章
- html5 页面 参数传递,详解html中页面跳转传递参数的问题
- php 函数 配置文件,php的几个配置文件函数
- 决策树原理实例(python代码实现)_决策树原理实例(python代码实现)
- python3.5安装scrapy_win10下基于python3.5安装scrapy教程
- python硬件交互_Python操作系统库说明,pythonos,笔记
- java 多模块项目 包路径冲突_多智能体仿真建模在交通中的应用|MATSim入门指南...
- 用积木做了个无人机。
- 【深度好文】过了30岁,做技术开发、工程师还有前途吗?
- mcs-51单片机视频教程——从硬件到c语言手把手的教,手把手从零教你学51单片机...
- php中update语句修改多个字段,Myabtis中批量更新update多字段