找回密码
 加入
搜索
查看: 4765|回复: 9

[系统综合] 如何按下Application键弹出菜单

  [复制链接]
发表于 2010-3-20 11:59:40 | 显示全部楼层 |阅读模式
请问下在ctrl旁边的那个application怎么弹出上下文菜单呢
和鼠标的右键功能相同的,需要键盘也能触发。
麻烦高手指点!!!!
发表于 2010-3-20 12:23:55 | 显示全部楼层
没明白LZ是的意思,如果只是为了弹出右键菜单,那这样也可以啊!
MouseClick('right')
 楼主| 发表于 2010-3-20 12:27:15 | 显示全部楼层
不是的,不知道楼上的朋友用过键盘上的application没。
也就是ctrl左边的那个下拉菜单,如果在选定项目按下会跳出上下文菜单的。
你单击我的电脑,然后按下这个application键他也可以跟鼠标的右键一样的。
我要的就是这种功能,用context创建的只接收鼠标右键,这个application就捕捉不到了。
发表于 2010-3-20 12:53:31 | 显示全部楼层
新手!!学习,期待中!!
 楼主| 发表于 2010-3-20 23:09:57 | 显示全部楼层
看来没人研究这个了,哎!!!!
发表于 2010-3-21 09:33:32 | 显示全部楼层
你看看这个键能不能用因为我记得键盘有几个键是不能用的
 楼主| 发表于 2010-3-21 13:19:03 | 显示全部楼层
可以用的啊,而且没听说哪一个键不能用的呢.
我经常用键盘操作,用鼠标倒是很少!!!
发表于 2010-3-22 15:31:05 | 显示全部楼层
看帮助
几句话
发表于 2010-3-22 17:06:48 | 显示全部楼层
本帖最后由 lainline 于 2010-3-22 17:34 编辑

Send ("{APPSKEY}")




或是

_sendkey("93|93|1")
_sendkey("93|93|129")


Func _sendkey($msg);发送键盘按键消息
        Local $GET,$vkCode,$scanCode,$flags
                $GET=StringSplit($msg,"|",2)
                $vkCode=$GET[0]
                $scanCode=$GET[1]
                $flags=$GET[2]
        If $flags=128 Or $flags=129 Or $flags=160 Or $flags=161 Then
                _winapi_keybd_event($vkCode,$scanCode,2)
        ElseIf $flags=1 Then
                _winapi_keybd_event($vkCode,$scanCode,1)
        Else
                _winapi_keybd_event($vkCode,$scanCode,0)
        EndIf
EndFunc


Func _winapi_keybd_event($bVk,$bScan,$dwFlags,$dwExtraInfo="");发送按键信息
        DllCall("user32.dll", "none", "keybd_event", "Byte", $bVk, "Byte", $bScan,"DWORD", $dwFlags,"DWORD", $dwExtraInfo)
        If @error Then Return SetError(@error, @extended, False)
        Return
EndFunc

评分

参与人数 1金钱 +20 贡献 +2 收起 理由
afan + 20 + 2

查看全部评分

发表于 2010-3-22 17:23:57 | 显示全部楼层
新手!!学习
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-16 19:49 , Processed in 0.073674 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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