找回密码
 加入
搜索
查看: 1466|回复: 8

隐藏GUI操作...弄了一天了还是不行...

[复制链接]
发表于 2009-10-7 09:43:29 | 显示全部楼层 |阅读模式
本帖最后由 五猫橙 于 2009-10-8 07:24 编辑

为了看效果..把所有hide变成minimize

找了半天...这个帖子比较有参考性
Run('notepad.exe','',@SW_MINIMIZE)
WinWait('无标题 - 记事本','')
ControlSend('无标题 - 记事本','','Edit1','HELP YOU')
这样运行是可以的..但是我费解的是..为什么在计算器里就不行了,测试了一些程序,有的可以,有的不行...为什么..下面是计算器的测试代码
Run('calc','',@SW_MINIMIZE)
WinWait('计算器','')
ControlSend('计算器','','Edit1','123')
多次试验发现.下面这句命令就不能minimize...
Run('calc','',@SW_MINIMIZE)
在那个帖子8楼,发现了这段
Run('calc')
WinWait('计算器','')
;sleep(1000)
WinSetState ( '计算器', "", @SW_MINIMIZE)
ControlSetText('计算器','','Edit1','123')
几乎可以了.但是窗口要闪一下...

有人知道怎么弄吗
发表于 2009-10-7 10:17:55 | 显示全部楼层
Run(@SystemDir & '\calc.exe')
WinWaitActive('计算器', 'Backspace')
MsgBox(262148, '注意计算器', '记住计算机里显示的数字是多少!' & @CR & '记住后按‘是’')
$hwnd = WinGetHandle('计算器', 'Backspace')
WinSetState($hwnd, '', @SW_HIDE)
;~ ControlClick($hwnd, '', '[text:9]')
ControlSetText($hwnd, '', '[classnn:Edit1]', '999')
MsgBox(262212, '注意看桌面', '计算机隐藏了吗?')
WinSetState($hwnd, '', @SW_SHOW)

评分

参与人数 1金钱 +5 贡献 +3 收起 理由
afan + 5 + 3

查看全部评分

 楼主| 发表于 2009-10-7 10:45:54 | 显示全部楼层
LS...你看帖子的最后一段代码..你的跟那个差不多...
我是想从一开始就隐藏.不闪的..

还有..为什么要获取句柄?
发表于 2009-10-7 11:22:25 | 显示全部楼层
run无法对 所有 程序 做 @SW_HIDE
 楼主| 发表于 2009-10-7 11:32:10 | 显示全部楼层
4# sxd
哦...那是不是说...对于某些程序,不可能不闪了...
 楼主| 发表于 2009-10-7 16:06:48 | 显示全部楼层
我顶
顶顶顶
发表于 2009-10-7 23:56:48 | 显示全部楼层
4# sxd
哦...那是不是说...对于某些程序,不可能不闪了...
五猫橙 发表于 2009-10-7 11:32

是的 你只能显示出来后 再隐藏 只能闪一下
 楼主| 发表于 2009-10-8 07:25:16 | 显示全部楼层
那就算是已解决了吧.感谢各位帮助
发表于 2009-10-23 23:23:40 | 显示全部楼层
3# 五猫橙


计算机这一类属于应用程序!所以要取句柄!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-5-24 01:00 , Processed in 0.078402 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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