菜鸟求助:如何获取鼠标下的文本信息?

SoraSky 2010-10-01 11:09:26
就是类似于金山词霸的屏幕取词功能,但不用在别的程序获取,只在本程序获取就行了。我首先想到的是计算每个单词所在的矩形区域,并逐一判断鼠标坐标是否在其上。还有没有更好的办法呢?
...全文
103 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
na2650945 2010-10-04
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 sorasky 的回复:]

不用那么麻烦了,CEdit和CRichEditCtrl都提供CharFromPos的函数
int CharFromPos(CPoint pt)
该函数向Edit控件发送EM_CHARFROMPOS的消息,可以返回最接近该点的字符索引,剩下的事情就好办了。
但如果是其他控件,那就难办了。
[/Quote]
这个。
学习下。
hdg3707 2010-10-04
  • 打赏
  • 举报
回复
好象可以通过判断屏幕上某点属性可以得到该点符,记得在DOS下可以这么做,估计在WINDOWS下也可以
傻X 2010-10-04
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 sund71 的回复:]
引用 4 楼 sorasky 的回复:
不用那么麻烦了,CEdit和CRichEditCtrl都提供CharFromPos的函数
int CharFromPos(CPoint pt)
该函数向Edit控件发送EM_CHARFROMPOS的消息,可以返回最接近该点的字符索引,剩下的事情就好办了。
但如果是其他控件,那就难办了。
你可以重载这个函数,编写一些自己想要的功能.
[/Quote]

纯粹扯蛋,你能保证你鼠标选中的位置都用这个控件。
偏离楼主的本义了
Sund71 2010-10-04
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 sorasky 的回复:]
不用那么麻烦了,CEdit和CRichEditCtrl都提供CharFromPos的函数
int CharFromPos(CPoint pt)
该函数向Edit控件发送EM_CHARFROMPOS的消息,可以返回最接近该点的字符索引,剩下的事情就好办了。
但如果是其他控件,那就难办了。
[/Quote] 你可以重载这个函数,编写一些自己想要的功能.
SoraSky 2010-10-03
  • 打赏
  • 举报
回复
不用那么麻烦了,CEdit和CRichEditCtrl都提供CharFromPos的函数
int CharFromPos(CPoint pt)
该函数向Edit控件发送EM_CHARFROMPOS的消息,可以返回最接近该点的字符索引,剩下的事情就好办了。
但如果是其他控件,那就难办了。
一名程序员 2010-10-03
  • 打赏
  • 举报
回复
感觉问题稍微有点复杂。
yann2 2010-10-02
  • 打赏
  • 举报
回复
GetcursorPos获得鼠标位置

以该店位置扩充出一个矩形 大小自己定义 考虑下一般文字的大小的高度 宽度考虑一下要截取多少个字 字和字相加起来的宽度

用模拟键盘消息的方法将鼠标从该矩形左边移到右边

最后模拟键盘Ctrl+C 获取文本信息

只是个想法 有点笨 供参考
傻X 2010-10-02
  • 打赏
  • 举报
回复
感觉1楼的只是想法,离开实际差很远,你举行区域获取的内容,图片还是什么?怎么比对?
缘梦逍遥 2010-10-02
  • 打赏
  • 举报
回复
首先要先获得鼠标的的坐标,然后划词获取其矩形区域,然后比较 差不多应该是这样 一同探讨

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧