51Testing软件测试论坛

标题: 【已解决】如何获取“SwfEdit”里的值? [打印本页]

作者: wujianping    时间: 2010-3-1 11:16
标题: 【已解决】如何获取“SwfEdit”里的值?
比如我填进去了“公鸡一斤25块”,那如何获取已填入的全部文字,或第前几个字,或后面几个字,返回到一个变量里,用msgbox显示出来?

[ 本帖最后由 yujie6832 于 2010-3-1 17:13 编辑 ]
作者: zzxxbb112    时间: 2010-3-1 11:28
获取它的value属性~  使用GETROPROPERTY方法
前后多少字可以用分割函数~
作者: z_kh    时间: 2010-3-1 11:29
看你什么时候需要获取
如果在输入完第一时间就需要获,就只能通过VBS或者调用dll等来处理,
如果你是在提交数据的时候获取,可以考虑用GetRoProperty来获取文本信息。
前后字用instr,mid

[ 本帖最后由 z_kh 于 2010-3-1 11:31 编辑 ]
作者: wujianping    时间: 2010-3-1 11:33
原帖由 zzxxbb112 于 2010-3-1 11:28 发表
获取它的value属性~  使用GETROPROPERTY方法
前后多少字可以用分割函数~


用value好像得不到,只返回一个空值

能不能给个实例?谢谢
作者: wujianping    时间: 2010-3-1 11:39
原帖由 z_kh 于 2010-3-1 11:29 发表
看你什么时候需要获取
如果在输入完第一时间就需要获,就只能通过VBS或者调用dll等来处理,
如果你是在提交数据的时候获取,可以考虑用GetRoProperty来获取文本信息。
前后字用instr,mid


具体是怎么做的?

我这条语句是 var_GetChar = SwfWindow("协同管理系统正式版").SwfWindow("COM102-系统参数设置").SwfEdit("m_TextBox_2").GetROProperty ("value")
作者: yujie6832    时间: 2010-3-1 11:55
原帖由 wujianping 于 2010-3-1 11:33 发表


用value好像得不到,只返回一个空值

能不能给个实例?谢谢

得不到的话,先用SPY查,哪个是关键属性那就用哪个
作者: z_kh    时间: 2010-3-1 12:40
你应该是在数据提交前获取吧?

考虑下VBS里的键盘事件,输入数据和数据监控在同一个函数里完成,先增加onkeypress,然后再keypress
详细的可以参考下VBS的说明文档。
作者: wujianping    时间: 2010-3-1 17:07
你们想的还是比较多的

没想到很容易就解决了,用GetROProperty得到“Text”的文本数据,然后用Left,Right,Mid函数就可以解决鸟!

Dim GetChar,ResultValue

GetChar = SwfWindow("协同管理系统正式版").SwfWindow("COM102-系统参数设置").SwfEdit("m_TextBox_2").GetROProperty ("Text")

ResultValue = Left(GetChar,5)

'ResultValue= Right(GetChar,5)

'ResultValue = Mid(GetChar,14,9)'

msgbox ResultValue
作者: yujie6832    时间: 2010-3-1 17:13
呵呵,毕竟大家没有真实环境
作者: wujianping    时间: 2010-3-1 17:36
依然非常感谢大家的帮助!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2