Skip to content

[Request]: 状态提示 - 鼠标样式适配屏幕 DPI / 缩放比例 #338

Description

@qjh9527

你应该确保已经完成了下面这些事情

  • 你正在使用 InputTip 的最新版本
  • 你确定这个新功能是合理的,在 InputTip 中没有等效的相关功能

描述这个功能请求

目前 InputTip 存在哪些不足?

启用「状态提示 - 鼠标样式」后,在 1920×1080、100% 缩放下显示正常;但在 5120×2880、200% 缩放下,自定义鼠标样式会明显偏大,与系统默认光标尺寸不一致。

对比其他状态提示方案(悬浮小窗、光标/鼠标符号、窗口边框),它们已通过 getScreenInfo().scale 等方式做了 DPI 适配,而鼠标样式目前没有对应的缩放处理。

详细描述功能需求

希望「状态提示 - 鼠标样式」能根据当前显示器的 DPI / 缩放比例,自动加载并显示合适尺寸的光标,使其在不同分辨率和缩放设置下,视觉大小与系统默认光标保持一致。

复现环境(供参考)

  • 分辨率:5120×2880
  • 缩放:200%
  • 对比:1920×1080、100% 缩放下表现正常

可行的实现方案(供参考)

查阅代码后,cursor.ahk 目前使用 LoadCursorFromFile + SetSystemCursor 加载光标,未做 DPI 相关处理;且 WM_DISPLAYCHANGE 触发时只更新悬浮小窗,不会重新加载鼠标样式。

可能的改进方向:

  1. 改用 LoadImage(配合 LR_DEFAULTSIZE | LR_LOADFROMFILE)替代 LoadCursorFromFile,让系统按当前 DPI 选择合适尺寸
  2. 在 DPI / 显示设置变化时(如 WM_DPICHANGED)重新调用 loadCursor
  3. 提供支持多尺寸的 .cur 资源,或参考 SetThreadCursorCreationScaling(Windows 11+)做更精细的控制

你正在使用什么 Windows 系统版本?

Windows 11

还有其他你想要补充的信息吗?

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions