gpt4 book ai didi

c - 我怎样才能获得选定的文本

转载 作者:行者123 更新时间:2023-11-30 17:46:24 24 4
gpt4 key购买 nike

我想知道如何获取选定的文本。 (通常通过鼠标拖动或文本上的 Shift + 箭头来完成)

来自记事本、word、Internet Explorer 地址栏等

发送 WM_GETTEXT 只是复制标题,当我在文件资源管理器上重命名文件名时无法复制所选文本。

所以,我正在考虑模拟 Ctrl+C。但模拟击键似乎不是一个好主意。因为它会产生副作用。(如果 Ctrl+C 分配给其他功能)

我尝试了以下代码,希望将当前选定的文本复制到剪贴板

OpenClipboard(0);
EmptyClipboard();
SetClipboardData(CF_TEXT,0);
CloseClipboard();

但运气不好,它只是空剪贴板。

如何复制当前选定的文本?

(模拟Ctrl+c,没有不可预测的效果)

谢谢!(我的环境是Windows 7,C编程语言,winapi)

最佳答案

我不确定是否有通用答案,因为您提到的各种应用程序使用不同的窗口类。
特别是对于记事本:显示区域似乎是一个简单的EDIT控件。您可以使用 EM_GETSEL消息来检索所选文本的开头和结尾,然后使用 WM_GETTEXT以获得完整的文本。不要使用GetWindowText因为它不适用于另一个进程的窗口。一般来说,您可以尝试使用 WM_COPY信息。这应该将文本放置在剪贴板中。但是,结果取决于该消息处理程序在其他应用程序中的实现方式。

关于c - 我怎样才能获得选定的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19310330/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com