如何解决多个游标插入符号一次功能,就像在 Visual Studio Code 中一样,但在每个 Windows 应用程序中?
想知道:https://code.visualstudio.com/docs/editor/codebasics 是否可以使用 WinApi 或通过 DLL 调用/注入在每个应用程序中全局实现?
哪个 api 调用可能与我入门有关?
解决方法
这是不可能的。需要解决的问题太多,没有通用的解决方案。
标准 carets 的硬限制为 one caret per queue。考虑到这一点,您现在必须解决的不是一个,而是两个问题:获得自定义插入符实现,并与系统提供的实现作斗争。
这听起来可能仍然可行,但即使只是将自定义呈现的插入符号注入到外部窗口中也是不可能的。系统中没有任何基础设施可以让您安全地访问您不拥有的任意(甚至标准)控件的呈现。
现在,即使您得到了上述所有问题的解决方案,您将如何将这些多选标记传达回客户端代码? EM_GETSEL 严格限制为最多一个选择标记。
到目前为止,这主要是关于标准控件。自定义控件实现不会让事情变得更容易。据我所知,WPF 使用了一个非常封闭的控件库,它甚至不提供 Windows 通用控件的自定义点。对于像 Qt 这样的 UI 工具包也是如此。虽然是开源的,但 Qt 不允许任何外部定制。
我确信还有更多问题没有通用的解决方案。虽然不是详尽的列表,但上述问题会阻止在您无法控制的任意 UI 中实现多选。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。