请教怎样才能正确循环获取控件文本
autojs吧
全部回复
仅看楼主
level 1
yxf4583 楼主
最近初学AUTOJS,写了一小段代码,想实现一个功能,大致意思如下:
从屏幕左上角获取控件的文本,这个文本是不定时更新的,显示内容大致为“张三 进入直播间”,或者“李四 进入直播间”,我想写几行代码自动欢迎一下,获取到控件文本后加上欢迎二字,就变成了“欢迎张三进入直播间”。
这个基本功能我已经实现了,但是无法循环获取,如果有人一直进入房间,控件文本一直在变,代码就运行正常,如果半天没有人进来的话,就会一直发送上一次获取到的信息,来回重复发送“欢迎张三进入直播间”,我想的是,如果没有人进来的话,能不能等待这个控件的内容变了之后再执行,等李四来了,再发送“欢迎李四进入直播间”,没人来就不发了,发一次就可以。
代码如下,麻烦大神帮我看看怎么改一下才能达到我想要的功能。
"auto";
launchApp("聊天室");
sleep(500);
while(true){
setText("欢迎"+id("live_common_tv_content").findOne(10000).text());
press(997,1337,1);
click("说点什么")
sleep(1000)
}
2021年05月10日 10点05分 1
level 5
弄个变量存一下那行字,有变化再做后面的
2021年05月11日 05点05分 2
关键是咋样才能检测出它有变化?
2021年05月11日 05点05分
@yxf4583 ………随便学一门编程语言吧,这个问题你随便学一点就知道了
2021年05月11日 06点05分
level 1
判断新变量是否等于旧变量如果相等的输出"",如果变量不相等,则输出最后一行数据。
2021年05月13日 00点05分 3
level 1
不过你应该要考虑到弹幕中可能会出现各种各样的礼物,还要挡字幕的,会影响判断。
2021年05月13日 00点05分 4
level 1
最好的话还是监听弹幕通知,弹幕通知每次都会更新新消息,并且不会有任何的挡字幕。
2021年05月13日 00点05分 5
level 1
变量存上一条信息 当出现下条信息时 判断2条信息是否相等,是就跳过,否就执行
2021年05月16日 07点05分 7
1