找回密码
 加入
搜索
查看: 1546|回复: 5

关于控件文件的读取

  [复制链接]
发表于 2010-1-7 00:47:44 | 显示全部楼层 |阅读模式
本帖最后由 ANTKD 于 2010-1-10 02:41 编辑

请教各位大哥一个忙.
我的问题是:
读取完一个控件里面已有的两行字,现在再向控件里面写入两行文字,然后重新读取控件里面的文本,但我想之前有的那两行,不再读取.就取之后加进去的两行文本.要怎么做呢???
例如 控件1 里面有两行字,分别为:
123456
aaaaaa
先读取完后.....
再向控件里面加入两行字.就就成下面这样.
123456
aaaaaa
567890
bbbbbb
现在就是要读取控件里面后加入的这两行文件的内容.(567890  bbbbbbb).

具体怎么操作呢?请知道的指教一下.想了好久都没头绪.在此先谢了!!!!
发表于 2010-1-7 09:06:43 | 显示全部楼层
ControlGetText ( "窗口标题", "窗口文本", 控件ID);读文本
ControlSetText ( "窗口标题", "窗口文本", 控件ID, "新文本" [,标志] );修改文本
ControlSend ( "窗口标题", "窗口文本", 控件ID, "字符串" [, 标志] );发送字符串
标志你可以去帮助里看下,在函数参考→窗口管理→Controls里,或在帮助里直接搜索一下
 楼主| 发表于 2010-1-7 16:05:58 | 显示全部楼层
试一下这位兄弟的办法。先谢过。
 楼主| 发表于 2010-1-7 16:17:25 | 显示全部楼层
看了一下,可能我表达的意思不太清楚。

我的问题是:控件里面的文字在不段增加。
我每隔2秒钟读取一次控件。获取控件里面的文本。但要求,每次读取的内容要去掉之前已读取过的部份。
也就是例如:
第一次是
123
aaa
第二次因为控件在不断增加文件就变成
123
aaa
456
bbb
我再读取这个控件文本的时候,只想要456 BBB,之前已读取的部份不要。不知道能实现不?
 楼主| 发表于 2010-1-10 02:21:39 | 显示全部楼层
几天了.总没找到合适的方法.

最后,用了一个INI来做辅助.将第一次读取到的字符总数写入INI,第二次时,读取字符总数跟INI里面的数字作对比,从而得到不同的文本.然后再更新INI里面的数字.每一次作对比,再更新.

或许各位有更好的方法.但我这菜鸟只能暂时用这种了.呵..效果达到!!谢谢关心过此帖的兄台!!!
发表于 2010-1-11 00:12:52 | 显示全部楼层
回复 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
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2025-1-12 09:01 , Processed in 0.116011 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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