关于控件文件的读取
本帖最后由 ANTKD 于 2010-1-10 02:41 编辑请教各位大哥一个忙.
我的问题是:
读取完一个控件里面已有的两行字,现在再向控件里面写入两行文字,然后重新读取控件里面的文本,但我想之前有的那两行,不再读取.就取之后加进去的两行文本.要怎么做呢???
例如 控件1 里面有两行字,分别为:
123456
aaaaaa
先读取完后.....
再向控件里面加入两行字.就就成下面这样.
123456
aaaaaa
567890
bbbbbb
现在就是要读取控件里面后加入的这两行文件的内容.(567890bbbbbbb).
具体怎么操作呢?请知道的指教一下.想了好久都没头绪.在此先谢了!!!! ControlGetText ( "窗口标题", "窗口文本", 控件ID);读文本
ControlSetText ( "窗口标题", "窗口文本", 控件ID, "新文本" [,标志] );修改文本
ControlSend ( "窗口标题", "窗口文本", 控件ID, "字符串" [, 标志] );发送字符串
标志你可以去帮助里看下,在函数参考→窗口管理→Controls里,或在帮助里直接搜索一下 试一下这位兄弟的办法。先谢过。 看了一下,可能我表达的意思不太清楚。
我的问题是:控件里面的文字在不段增加。
我每隔2秒钟读取一次控件。获取控件里面的文本。但要求,每次读取的内容要去掉之前已读取过的部份。
也就是例如:
第一次是
123
aaa
第二次因为控件在不断增加文件就变成
123
aaa
456
bbb
我再读取这个控件文本的时候,只想要456 BBB,之前已读取的部份不要。不知道能实现不? 几天了.总没找到合适的方法.
最后,用了一个INI来做辅助.将第一次读取到的字符总数写入INI,第二次时,读取字符总数跟INI里面的数字作对比,从而得到不同的文本.然后再更新INI里面的数字.每一次作对比,再更新.
或许各位有更好的方法.但我这菜鸟只能暂时用这种了.呵..效果达到!!谢谢关心过此帖的兄台!!! 回复 1# ANTKD
先获取之前的字符数,再减去相应数量的字符,应该就行了吧
没有源码,不好具体分析…… 写个简单例子如下(不判断用户是否删除之前的字符再重输的情况):GUICreate('读取test', 400, 300)
$Edit1 = GUICtrlCreateEdit('', 0, 0, 400, 250)
$button1 = GUICtrlCreateButton('读取上次上屏之后增加的输入', 10, 260, 220, 25)
GUISetState()
Dim $n = 0
While 1
Switch GUIGetMsg()
Case -3
Exit
Case $button1
$a = GUICtrlRead($Edit1)
$nn = StringLen($a)
$s = StringMid($a, $n + 1)
If $nn >= $n Then MsgBox(0, 0, $s)
$n = $nn
EndSwitch
WEnd
页:
[1]