找回密码
 加入
搜索
楼主: yufei8051

[AU3基础] (已解决)请教如何获得气泡提示窗口中的文字?

 火.. [复制链接]
发表于 2012-11-18 15:30:27 | 显示全部楼层
先解决取到文字再说吧,照道理该窗体ID是不会变的,最多设计成每个页面为单独的ID,翻页测试下~
发表于 2012-11-18 15:34:20 | 显示全部楼层
回复 15# yufei8051
那里面的代码段,用winapi换下,几乎是一样的,不过是用c写的罢了
 楼主| 发表于 2012-11-18 16:05:56 | 显示全部楼层
先解决取到文字再说吧,照道理该窗体ID是不会变的,最多设计成每个页面为单独的ID,翻页测试下~
afan 发表于 2012-11-18 15:30



    超版周末愉快!
从窗口取文字的问题解决了,现在就是不知道怎么从一大堆字符串中取出想要的。
窗口的句柄是会变的,试过了,不过用上面我写的那两句代码可已解决这问题也能正确取出所有字符串。
可否烦请超版根据上面那图给出取相应部分字符串的正则?
正则表达式实在看不懂
 楼主| 发表于 2012-11-18 16:08:15 | 显示全部楼层
回复 17# netegg


    高手不知低手的菜啊,我这水平只能按别人的例子照猫画虎,那满屏英文几乎是天书
发表于 2012-11-18 16:09:35 | 显示全部楼层
回复 18# yufei8051


    \V+
#include <Array.au3>
Local $Str = _
                '从窗口取文字的问题解决了,现在就是不知道怎么从一大堆字符串中取出想要的。' & @CRLF & _
                '窗口的句柄是会变的,试过了,不过用上面我写的那两句代码可已解决这问题也能正确取出所有字符串。' & @CRLF & _
                '可否烦请超版根据上面那图给出取相应部分字符串的正则?' & @CRLF & _
                '正则表达式实在看不懂'
MsgBox(0, '原字符串', $Str)
Local $Test = StringRegExp($str, '\V+', 3)
If Not @Error Then MsgBox(0, '匹配数量: ' & UBound($Test), '其中[0]元素为: ' & $Test[0])
_ArrayDisplay($Test, UBound($Test))
 楼主| 发表于 2012-11-18 20:27:53 | 显示全部楼层
本帖最后由 yufei8051 于 2012-11-18 20:29 编辑
回复  yufei8051


    \V+
afan 发表于 2012-11-18 16:09



    谢谢超版关注。
试了一下,用你的例子完全可以实现,但是实际测试时还是不行,因为在实际运行中获取的全部文本,好像没有  @CRLF  字符的缘故,只能取到指定行的数据,而不是我想要的指定 段 的数据。
如下图,我想要的分别是上面红框中的三段,但实际上当我把数组的值分别取为0--2时取到的是3行,而且每段有多少个字都是不固定的:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2012-11-18 20:32:30 | 显示全部楼层
回复 21# yufei8051


    把你捕捉的字符串用【code】形式贴出来不就行了……
 楼主| 发表于 2012-11-18 21:29:56 | 显示全部楼层
回复  yufei8051


    把你捕捉的字符串用【code】形式贴出来不就行了……
afan 发表于 2012-11-18 20:32



    好的。知道了。
    主要是这样直观些。
请问超版是否我引用的方法不对?我直接 $Test[0]这样用的。
发表于 2012-11-18 21:31:41 | 显示全部楼层
回复 23# yufei8051


    这样是直观,但不具体,不知道如何分行的。引用数组是对的。
 楼主| 发表于 2012-11-18 21:42:46 | 显示全部楼层
在三连阴后今天还是收个星星 预计明天
将继续这种小阴小阳的震荡行情

浪上花 

★娱乐区★★灌水贴★(禁止使用灌水机
,违者清空积分 ...

设置关注
清除信息
4/4
<11

-

18

 

21

:

41>
回复 24# afan
这是用信息工具抓取的
 楼主| 发表于 2012-11-18 21:46:55 | 显示全部楼层
大白菜6分钱一斤无人问津 多地菜农无奈
弃收 蔬菜价格全面下跌

君临天下2009 

★娱乐区★★灌水贴★(禁止使用灌水机
,违者清空积分 ...

设置关注
清除信息
22/22
<11

-

18

 

21

:

45>
回复 25# yufei8051
这是用
FileWrite(@ScriptDir & '\理想通伴侣.txt', $sWin & @CRLF)
写到文件的
发表于 2012-11-18 21:47:16 | 显示全部楼层
回复 25# yufei8051


    难道你这个程序一直要窗口信息工具捕捉文本?而且它捕捉到的并非原始格式的,是所有可见控件的文本。
 楼主| 发表于 2012-11-18 21:52:32 | 显示全部楼层
不是的,一开始是直接引用控件文本,但如上面所说控件的id老变,所以想改成获取窗体所有文本,再分别提取的办法
 楼主| 发表于 2012-11-18 21:55:21 | 显示全部楼层
26楼的就是获取窗体文本的,再写到文件里
 楼主| 发表于 2012-11-18 21:58:17 | 显示全部楼层
hWnd = WinGetHandle("[CLASS:#32770]","设置关
注")
$sAllstring = WinGetText($hWnd) ;获取所有文本
就是这两句。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-28 03:20 , Processed in 0.074925 second(s), 14 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表