微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在java中使用Windows API获取当前的鼠标光标types?

我怎样才能得到当前的鼠标光标在Java中使用Windows API的types? (游标types是指:指针,文本游标,繁忙游标和其他类别)

在这里find了一个链接

那里的API是给定的

BOOL WINAPI GetCursorInfo( __inout PCURSORINFO pci );

但是如何在java中使用api

移动鼠标光标在C#

如何在插入模式下更改Vim文本指针大小?

HCURSOR从另一个窗口,可能吗?

如何获取terminal中的光标位置?

在Python上模拟鼠标点击

如何获得鼠标光标图标VS c + +

光标不改变自定义控制出口

如何更改Windows从c + +闪烁光标形状?

如何将光标设置为winforms应用程序上的带有加号的箭头?

为什么自定义光标图像显示不正确?

我想最接近你会得到通过:

在您的java应用程序中找到focusOwner组件

调用getCursor()。getType();

您可以使用JNA – java原生访问。 它提供对本地库的访问,如Windows中的DLL。 https://github.com/twall/jna#readme

这在Win7上运行的非常好。 脚本是Python,但应该很容易翻译成任何其他语言。 当然,它只适用于相应的应用程序不使用自定义游标的情况:

from win32con import IDC_APPSTARTING,IDC_ARROW,IDC_CROSS,IDC_HAND,IDC_HELP,IDC_IBEAM,IDC_ICON,IDC_NO,IDC_SIZE,IDC_SIZEALL,IDC_SIZEnesW,IDC_SIZENS,IDC_SIZENWSE,IDC_SIZEWE,IDC_UPARROW,IDC_WAIT from win32gui import LoadCursor,GetCursorInfo def get_current_cursor(): curr_cursor_handle = GetCursorInfo()[1] return Cursor.from_handle(curr_cursor_handle) class Cursor(object): @classmethod def from_handle(cls,handle): for cursor in DEFAULT_CURSORS: if cursor.handle == handle: return cursor return cls(handle=handle) def __init__(self,cursor_type=None,handle=None): if handle is None: handle = LoadCursor(0,cursor_type) self.type = cursor_type self.handle = handle DEFAULT_CURSORS = APPSTARTING,ARROW,CROSS,HAND,HELP,IBEAM,ICON,NO,SIZE,SIZEALL,SIZEnesW,SIZENS,SIZENWSE,SIZEWE,UPARROW,WAIT = Cursor(IDC_APPSTARTING),Cursor(IDC_ARROW),Cursor(IDC_CROSS),Cursor(IDC_HAND),Cursor(IDC_HELP),Cursor(IDC_IBEAM),Cursor(IDC_ICON),Cursor(IDC_NO),Cursor(IDC_SIZE),Cursor(IDC_SIZEALL),Cursor(IDC_SIZEnesW),Cursor(IDC_SIZENS),Cursor(IDC_SIZENWSE),Cursor(IDC_SIZEWE),Cursor(IDC_UPARROW),Cursor(IDC_WAIT)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐