51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4342|回复: 5
打印 上一主题 下一主题

[求助] 键盘动作:如何在点击行的时候按住CTRL键不放以便多选

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-4-24 10:03:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
'发送键盘动作 按下Ctrl 键  准备多选
Extern.Declare micVoid, "keybd_event", "user32.dll", "keybd_event",  micByte,micByte,micDWord,micULong
Extern.keybd_event VK_CONTROL,0,0,0

           
RowCount = Browser("合同管理").Page("合同管理").Frame("ifrmGrid_4").WebTable("1").RowCount
For  i =1 to  RowCount
   flag =  Browser("合同管理").Page("合同管理").Frame("ifrmGrid_4").WebTable("1").GetCellData(i,2)
         If flag <>"*" Then
               Browser("合同管理").Page("合同管理").Frame("ifrmGrid_4").WebTable("1").ChildItem(i,2,"WebElement",0).Click
         End If
Next

Extern.keybd_event VK_CONTROL,0,KEYEVENTF_KEYUP ,0

想在单击行的同时按住CTRL键不放,以便多选行

红色字体是键盘动作Ctrl键按下的代码
可是,上面的效果仍然是一行行的单击,Ctrl键的按下动作没有体现出来
问题出在哪呢?

我看到论坛上也有好多讨论键盘动作的,不过,有很多都没看明白,所以,斑竹就不要说让我再去论坛找找了

[ 本帖最后由 sky-vid 于 2007-4-24 10:10 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2007-4-24 11:14:31 | 只看该作者
不好意思,自己费了九牛二虎之力,终于搞定

把 Extern.keybd_event VK_CONTROL,0,0,0 这句话改为

Extern.keybd_event 162,0,0,0

真奇怪,怎么会识别不了 VK_CONTROL
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-4-24 13:54:24 | 只看该作者
键盘常量可能未定义
而且你用的那个162是VK_LCONTROL
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2007-4-24 14:27:11 | 只看该作者
感谢caigua

不过有人知道VK_Control的值是多少?
另外,还有KEYEVENTF_KEYUP的值是多少?
Extern.keybd_event 162,0,KEYEVENTF_KEYUP ,0  这句话执行了也没效果
我估计也要把 KEYEVENTF_KEYUP改为为它所代表的值

[ 本帖最后由 sky-vid 于 2007-4-24 16:34 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-10-19 14:57:24 | 只看该作者
162是VK_LCONTROL
请问哪个知道alt键的值是多少?
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-10-19 17:08:08 | 只看该作者
VK_CONTROL 11
VK_MENU 12    (alt)
VK_SHIFT 10
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-9-29 04:18 , Processed in 0.095858 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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