VBA里,如何获取鼠标坐标

VBA里,如何获取鼠标坐标,第1张

Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long\x0d\\x0d\Type POINTAPI\x0d\ X As Long\x0d\ Y As Long\x0d\End Type\x0d\\x0d\Public Function getmouse_x_y() As POINTAPI\x0d\GetCursorPos getmouse_x_y\x0d\\x0d\End Function\x0d\\x0d\sub test()\x0d\'call getmouse_x_y '调用“获取鼠标坐标值过程”(假定你们给的过程/程序,名叫getmouse_x_y)\x0d\if getmouse_x_yx>100 and getmouse_x_yy>100 then '根据返回当前鼠标的坐标值执行某过程/程序\x0d\\x0d\end sub

想要获取鼠标坐标并不容易,还是一样需要调用两个API函数GetCursorPos() 获取鼠标指针位置(屏幕坐标)然后采用ScreenToClient() 将鼠标指针位置转换为窗口坐标输出即可。上例子。

// 程序名称:通过 API 获取鼠标状态

//

#include <graphicsh>

#include <stdioh>

void main()

{

initgraph(640, 480); // 初始化绘图窗口

HWND hwnd = GetHWnd(); // 获取绘图窗口句柄

POINT point;

TCHAR s[10];

while(true)

{

GetCursorPos(&point); // 获取鼠标指针位置(屏幕坐标)

ScreenToClient(hwnd, &point); // 将鼠标指针位置转换为窗口坐标

// 获取鼠标按键状态可以用 GetAsyncKeyState 函数,这里不再详述。

// 输出鼠标坐标

sprintf(s, _T("%05d"), pointx);

outtextxy(0, 0, s);

sprintf(s, _T("%05d"), pointy);

outtextxy(0, 20, s);

// 适当延时

Sleep(10);

}

}

同样运行环境需要安装EasyX。

键盘和鼠标各个键位对应的ASCII码值如下:

这就是键盘和鼠标上各个键位对应的ASCII码,一些支持宏编程的键盘和鼠标上面的一些键位没有专属的ASCII码,具体对应的ASCII码要看编程对应的对象。

扩展资料:

32~126(共95个)是字符(32是空格),其中48~57为0到9十个阿拉伯数字。

65~90为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。

同时还要注意,在标准ASCII中,其最高位(b7)用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误的一种方法,一般分奇校验和偶校验两种。奇校验规定:正确的代码一个字节中1的个数必须是奇数,若非奇数,则在最高位b7添0;偶校验规定:正确的代码一个字节中1的个数必须是偶数,若非偶数,则在最高位b7添1。

后128个称为扩展ASCII码。许多基于x86的系统都支持使用扩展(或“高”)ASCII。扩展ASCII 码允许将每个字符的第8 位用于确定附加的128 个特殊符号字符、外来语字母和图形符号。

参考资料:

百度百科——ASCII

以上就是关于VBA里,如何获取鼠标坐标全部的内容,包括:VBA里,如何获取鼠标坐标、C程序中,怎样获得鼠标的坐标、键盘各键对应的ASCII码值(包括鼠标和键盘所有的键)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9563846.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存