热情软件屋

 

用SendKeys()函数如何将Ctrl,alt,shift键的状态和普通的键一起送出


编号:QA002501
建立日期: 2000年1月29日 最后修改日期:2000年1月29日
所属类别:

jack:
    os:win97/vb5
    我现在想在我的编辑器中写一个宏录制程序,遇到了一个问题。用SendKeys()函数如何将Ctrl,alt,shift键的状态和普通的键一起送出?打个比方我按下了Ctrl+W键在宏执行的时候,我如何将这两个键发送出去。我是将Ctrl,Alt,Shift键相对应的字符存放在一个变量中的。
    sample:sendkeys ConState{"a"}
    ConState存储的是ctrl,alt,shift的字符串

回答:

    为了指定那些与 SHIFT、CTRL 及 ALT 等按键结合的组合键,可在这些按键码的前面放置一个或多个代码,这些代码列举如下:
    

按键代码
SHIFT+
CTRL^
ALT%

    为了说明在按下其它按键时应同时按下 SHIFT、CTRL、及 ALT 的任意组合键,请把那些按键的码放在括号当中。例如,为了说明按下 E 与 C 的时候同时按下 SHIFT 键,请使用 "+(EC)"。为了说明在按下 E 的时候同时按下 SHIFT 键,但接着按 C 而不按 SHIFT,则使用 "+EC"。
    对 SendKeys 来说,加号 (+)、插入符 (^)、百分比符号 (%)、上划线 (~) 及圆括号 ( ) 都具有特殊意义。为了指定上述任何一个字符,要将它放在大括号 ({}) 当中。例如,要指定正号,可用 {+} 表示。方括号 ([ ]) 对 SendKeys 来说并不具有特殊意义,但必须将它们放在大括号中。在其它应用程序中,方括号有特殊意义,在出现动态数据交换 (DDE) 的时候,它可能具有重要意义。为了指定大括号字符,请使用 {{} 及 {}}。
    另外,参考Sendkeys的帮助,可以找到其他一些特殊键的传递方法。
    相关问题:
    QA002048 "怎样向正在运行的程序发送关闭、最大化、最小化的命令"

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio