Delphi 鼠标控制函数GetCursorPos、SetCursorPos
GetCursorPos函数 获取鼠标的位置
var
P: TPoint;
begin
GetCursorPos(P); //获取鼠标位置
end;
SetCursorPos函数 设置鼠标的位置
var
x,y:integer; //
begin
x:=614; y:=282; //
SetCursorPos(x,y); //
Mouse_Event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); //开始点击
Mouse_Event(MOUSEEVENTF_LEFTUP,0,0,0,0); //弹出
end;
mouse_event,用于模拟鼠标动作。无返回值。参数1类型:整数型(Integer),鼠标动作标识;参数2类型:整数型(Integer),鼠标动作的水平坐标X;参数3类型:整数型(Integer),鼠标动作的垂直坐标Y;参数4类型:整数型(Integer),鼠标滚轮转动方向,若当前鼠标无滚轮动作,则取值为0;参数5在Windows SDK中的函数原型:
VOID mouse_event(
DWORD dwFlags, // flags specifying various motion/click variants 鼠标动作标识
DWORD dx, // horizontal mouse position or position change 鼠标动作的水平坐标
DWORD dy, // vertical mouse position or position change 鼠标动作垂直坐标
DWORD dwData, // amount of wheel movement 当鼠标动作标识为MOUSEEVENTF_WHEEL时,此参数为鼠标滚轮转动方向,正值表示滚轮向前旋转,远离用户;负值表示滚轮向后旋转,向用户。
DWORD dwExtraInfo // 32 bits of application-defined information 设定一个32位值用于取扩展信息
);
鼠标动作标识:
MOUSEEVENTF_MOVE = $0001; { mouse move 鼠标移动}
MOUSEEVENTF_LEFTDOWN = $0002; { left button down 左键按下}
MOUSEEVENTF_LEFTUP = $0004; { left button up 左键弹起}
MOUSEEVENTF_RIGHTDOWN = $0008; { right button down 右键按下}
MOUSEEVENTF_RIGHTUP = $0010; { right button up 右键弹起}
MOUSEEVENTF_MIDDLEDOWN = $0020; { middle button down 中间按下}
MOUSEEVENTF_MIDDLEUP = $0040; { middle button up 中键弹起}
MOUSEEVENTF_WHEEL = $0800; { wheel button rolled 滚轮移动}
MOUSEEVENTF_ABSOLUTE = $8000; { absolute move 绝对移动}
其他操作:
var
SDC: HDC;
SColor: COLORREF;
begin
//鼠标移动到坐标X:20 Y:30初
Mouse.CursorPos := Point(20, 30); //获取屏幕坐标X:20 Y:30初的颜色
SDC := GetDC(0);
SColor := GetPixel(SDC, 20, 30);
ReleaseDC(0, SDC); //把取到的颜色画在屏幕上
Canvas.Brush.Color := SColor;
Canvas.FillRect(Rect(0, 0, 50, 50));
Delphi 鼠标控制函数GetCursorPos、SetCursorPos的更多相关文章
- Delphi - 通过WinAPI GetCursorPos实现鼠标位置的实时显示
通过WinAPI GetCursorPos实现鼠标位置的实时显示 有时候我们需要将鼠标的位置实时抓取出来,可以通过如下方式实现. 添加一个Timer控件,执行间隔改为100ms,双击控件输入如下代码: ...
- delphi 鼠标拖动
GetWindowRect(tgph, Rect); //获得窗体大小 setcursorpos(Rect.Left + 487, Rect.Top + 274); delay(100); mouse ...
- Delphi - 鼠标上下滚动基础消息事件
Delphi实现对鼠标上下滚动基础消息的截获并处理 前几天有客户提出需求:由于个人PC界面限制,有时候电子图档显示不全,希望通过鼠标上下滚动用来控制电子图档的放大和缩小. 下面通过一个测试Demo来说 ...
- delphi鼠标状态
Screen.Cursor := crNo;
- Delphi 鼠标的编程
- Delphi 获取当前鼠标下的控件内容
Delphi 获取当前鼠标下的控件内容 主要函数: GetCursorPos://获取鼠标的位置 WindowFromPoint://获取制定point下的handle GetClassName:// ...
- python32模拟鼠标和键盘操作
前言Windows pywin32允许你像vc一样的形式来使用python开发win32应用.代码风格可以类似win32 sdk,也可以类似MFC,由你选择.如果你仍不放弃vc一样的代码过程在pyth ...
- 转发 C# Win32 API程序控制鼠标的操作
命名空间:using System.Runtime.InteropServices; 在程序中添加: [DllImport("User32")]public extern stat ...
- 借鉴 学习 DELPHI 通用函数 哈哈
[转]关于Delphi通用涵数 http://m.blog.csdn.net/blog/dragonjiang5460/1196927 2006-9-8阅读2016 评论0 DELPHI程序注册码设计 ...
随机推荐
- 15.stop引发的数据不一致
/** * 数据不一致问题 * stop */ public class StopDemo { public static Student student = new Student(); publi ...
- django 邮箱发送
在django中提供了邮件接口 QQ邮箱配置 qq邮箱地扯:https://mail.qq.com settings文件 # 邮箱配置 EMAIL_USE_SSL = True EMAIL_HOST ...
- UNP学习 ioctl操作
一.ioctl函数 #include <unistd.h> int ioctl(int fd, int request, ... /* void * arg */); 返回:成功0,出错- ...
- oracle-字符串常用函数
1.拼接字符串 1)可以使用“||”来拼接字符串 -------------------------------------- select '拼接'||'字符串' as str from dual ...
- jQuery函数API,各版本新特性汇总
jQuery API 速查表 选择器 基本 #id element .class * selector1,selector2,selectorN 层级 ancestor descendant pare ...
- PHP如何进行错误与异常处理(PHP7中的异常处理和之前版本异常处理的区别)
PHP如何进行错误与异常处理(PHP7中的异常处理和之前版本异常处理的区别) 一.总结 一句话总结: throwable接口+Error类 在PHP7更新中有一条:更多的Error变为可捕获的Exce ...
- react 中使用 JsBarcode 显示条形码
import React from 'react';import JsBarcode from 'jsbarcode'; export class RefundSheet extends React. ...
- Oracle中使用REGEXP_SUBSTR,regexp_replace,wm_concat函数
REGEXP_SUBSTR函数格式如下: function REGEXP_SUBSTR(String, pattern, position, occurrence, modifier)__srcstr ...
- PHP面试 linux基础
Linux基础 Linux常用命令 系统安全:sudo su chmod setfacl 进程管理:w top ps kill pkill pstree killall 用户管理 ...
- 【webpack】webpack之postcss-loader的基本使用---【巷子】
一.postcss-loader简介 postcss-loader 用来对.css 文件进行处理,并添加在 style-loader 和 css-loader 之后.通过一个额外的 postcss 方 ...