316428696 发表于 2010-1-21 17:31:20

求教:如何鼠标选中一段字的代码和思路?

本帖最后由 316428696 于 2010-2-6 23:59 编辑

我想实现这样的功能,不知道有没有这样的函数,帮助查过几遍了,没查到。

实现的功能,就是,我有一行字,然后拖放选择了其中的几个字,我想知道怎么取到这几个字?

例如:


我想取到,鼠标选中的 “我有” 到 “几个字”,这几个字,就是获取鼠标选中的,即,蓝色区域。

敢问高手如何解决,给个思路也行,我自己会转换成代码。

afan 发表于 2010-1-21 17:44:05

Ctrl - C

水木子 发表于 2010-1-21 17:49:44

呵呵!这个估计还是要看你的文本放在什么控件内吧!

sanmoking 发表于 2010-1-21 17:58:22

Ctrl - C
afan 发表于 2010-1-21 17:44 http://www.autoitx.com/images/common/back.gif


    ctrl+cclipget....

pcbar 发表于 2010-1-21 19:42:01

楼主能否说的更清楚一点?
如果是EDIT控件,可以这样
#include <GuiEdit.au3>

$a='实现的功能,就是,我有一行字,然后拖放选择了其中的几个字,我想知道怎么取到这几个字?'
run("notepad.exe")
WinWaitActive("无标题 - 记事本")
ControlSetText("无标题 - 记事本","","Edit1",$a)
$handle=ControlGetHandle("无标题 - 记事本" ,"","Edit1")
_GUICtrlEdit_SetSel($handle, 18, 56)

maxkingmax 发表于 2010-1-21 21:39:57

send("{Shift down} {right 19} {Shift up}")

pusofalse 发表于 2010-1-21 23:07:23

真无聊,帮助文件是做什么用的,建议thesnoW和netegg不要再做汉化工作了。

316428696 发表于 2010-1-21 23:25:26

真无聊,帮助文件是做什么用的,建议thesnoW和netegg不要再做汉化工作了。
pusofalse 发表于 2010-1-21 23:07 http://www.autoitx.com/images/common/back.gif

呵呵,这样的功能看似容易,并非你讲的那么简单!这不是无聊!

316428696 发表于 2010-1-21 23:27:00

回复 6# maxkingmax

谢谢你们给的思路,但是Ctrl + C 这样操作不是那么简单!这涉及到文字识别!

316428696 发表于 2010-1-21 23:28:19

楼主能否说的更清楚一点?
如果是EDIT控件,可以这样
#include

$a='实现的功能,就是,我有一行字,然 ...
pcbar 发表于 2010-1-21 19:42 http://www.autoitx.com/images/common/back.gif

不存在控件的问题,这段文字可以是在网页上,可以是在图片上!可以是在PDF中!

316428696 发表于 2010-1-21 23:29:54

呵呵!这个估计还是要看你的文本放在什么控件内吧!
水木子 发表于 2010-1-21 17:49 http://www.autoitx.com/images/common/back.gif
嗯,对!
主要是想获取鼠标拖动范围内的文字!Ctrl +C 是肯定不行的!

316428696 发表于 2010-1-21 23:35:06

Ctrl - C
afan 发表于 2010-1-21 17:44 http://www.autoitx.com/images/common/back.gif
如何判断选中文字结束呢?
如何判断选中的就是你要的这段文字呢?

afan 发表于 2010-1-21 23:36:07

鼠标弹起……

pusofalse 发表于 2010-1-21 23:36:57

回复 8# 316428696


    这果真是简单至极。如果要选中指定的文字,用5#的方法。如果要获取选中的文字,用以下方法:#include <GUIEdit.au3>
$hGUI = GUICreate("test", 400, 300)

$iEdit = GUICtrlCreateEdit("1234567", 10, 10, 380, 280)
$hEdit = GUICtrlGetHandle(-1)
GUISetState()
_GUICtrlEdit_SetSel($hEdit, 2, 4)

$aSel = _GUICtrlEdit_GetSel($hEdit)
$sData = GUICtrlRead($iEdit)
Msgbox(0, "", StringMid($sData, $aSel + 1, $aSel - $aSel))

Do
Until GUIGetMsg() = -3帮助文件中本就有这样的用法,所以还是无聊。

316428696 发表于 2010-1-21 23:39:58

回复 帮助文件中本就有这样的用法,所以还是无聊。
pusofalse 发表于 2010-1-21 23:36 http://www.autoitx.com/images/common/back.gif
如果是PDF呢?
如果是图片呢?
页: [1] 2
查看完整版本: 求教:如何鼠标选中一段字的代码和思路?