例如,假设我正在编辑以下文本(\ t用于标签,它不是文字) '\ t \ t \ t有些文字......' 我的输入键盘位置在'S'之前(没有选定的文字) 我想在'S'之前获得多个标签(在这种情况下是3)

那么如何使用Win32 API获取该数量的标签?

P.S。 也许某些函数可以获取整个当前行(然后解析该文本)?

编辑: 所以我想要我的程序(在后台运行并且没有GUI)来确定当前活动的任何文本编辑器中当前活动行的选项卡数量(我正在编辑)。

有帮助吗?

解决方案

对于某些应用程序(如标准Windows记事本),可以从其他应用程序执行此操作。记事本本身只是一个大的 Win32" Edit"在可调整大小的窗口内控制,因此可以使用所有常规的Win32 Edit控件消息来获取实际文本和插入位置等。

但是,在任何Windows文本编辑器的一般情况下,不要求应用程序使用Win32 Edit控件来满足其文本编辑需求(实际上,这样做只会重新发明记事本)。没有标准的Win32 API方法来查找插入符指向的位置,因为应用程序可以以任何它认为合适的方式在屏幕上自由绘制文本(并且将在应用程序内部存储该文本而没有相应的API供您使用呼叫)。

其他提示

最佳Java编码实践是尽可能使您的代码操作系统平台独立。如果您尝试实现本质上特定于Windows的实用程序(例如,严重依赖于Win32 API),那么最好使用C ++或C#而不是Java。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top