使用:

using System.Windows.Forms;//添加命名空间引用

SendKeys.SendWait("{DOWN}");

ppt.ppt_sendkey("+{F5}");//全屏 表示SHIFT+F5的组合:加号直接代表shift键

ppt.ppt_sendkey("{ESC}");//取消全屏

SendKeys   语句

将一个或多个按键消息发送到活动窗口,就如同在键盘上进行输入一样。

语法

SendKeys   string[,   wait]

SendKeys   语句的语法具有以下几个命名参数:

部分   描述   
string   必需的。字符串表达式,指定要发送的按键消息。   
Wait   可选的。指定等待方式的   BooleandefBooleanDataType@veendf98.chm   值。如果为   False(缺省值),则控件在按键发送出去之后立刻返回到过程。如果为   True,则按键消息必须在控件返回到过程之前加以处理。

说明

每个按键由一个或多个字符表示。为了指定单一键盘字符,必须按字符本身的键。例如,为了表示字母   A,可以用   "A "   作为   string。为了表示多个字符,就必须在字符后面直接加上另一个字符。例如,要表示   A、B   及   C,可用   "ABC "   作为   string。

对   SendKeys   来说,加号   (+)、插入符   (^)、百分比符号   (%)、上划线   (~)   及圆括号   (   )   都具有特殊意义。为了指定上述任何一个字符,要将它放在大括号   ({})   当中。例如,要指定正号,可用   {+}   表示。方括号   ([   ])   对   SendKeys   来说并不具有特殊意义,但必须将它们放在大括号中。在其它应用程序中,方括号有特殊意义,在出现动态数据交换   (DDE)   的时候,它可能具有重要意义。为了指定大括号字符,请使用   {{}   及   {}}。

为了在按下按键时指定那些不显示的字符,例如   ENTER   或   TAB   以及那些表示动作而非字符的按键,请使用下列代码:

按键   代码   
BACKSPACE   {BACKSPACE},   {BS},   或   {BKSP}   
BREAK   {BREAK}   
CAPS   LOCK   {CAPSLOCK}   
DEL   or   DELETE   {DELETE}   或   {DEL}   
DOWN   ARROW   {DOWN}   
END   {END}   
ENTER     {ENTER}或   ~   
ESC   {ESC}   
HELP   {HELP}   
HOME   {HOME}   
INS   or   INSERT   {INSERT}   或   {INS}   
LEFT   ARROW   {LEFT}   
NUM   LOCK   {NUMLOCK}   
PAGE   DOWN   {PGDN}   
PAGE   UP   {PGUP}   
PRINT   SCREEN   {PRTSC}   
RIGHT   ARROW   {RIGHT}   
SCROLL   LOCK   {SCROLLLOCK}   
TAB   {TAB}   
UP   ARROW   {UP}   
F1   {F1}   
F2   {F2}   
F3   {F3}   
F4   {F4}   
F5   {F5}   
F6   {F6}   
F7   {F7}   
F8   {F8}   
F9   {F9}   
F10   {F10}   
F11   {F11}   
F12   {F12}   
F13   {F13}   
F14   {F14}   
F15   {F15}   
F16   {F16}

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

按键   代码   
SHIFT   +   
CTRL     ^   
ALT   %

为了说明在按下其它按键时应同时按下   SHIFT、CTRL、及   ALT   的任意组合键,请把那些按键的码放在括号当中。例如,为了说明按下   E   与   C   的时候同时按下   SHIFT   键,请使用   "+(EC) "。为了说明在按下   E   的时候同时按下   SHIFT   键,但接着按   C   而不按   SHIFT,则使用   "+EC "。

为了指定重复键,使用   {key   number}   的形式。必须在   key   与   number   之间放置一个空格。例如,{LEFT   42}   意指   42   次按下   LEFT   ARROW   键;{h   10}   则是指   10   次按下   H   键。

注意   不能用   SendKeys   将按键消息发送到这样一个应用程序,这个应用程序并没有被设计成在   Microsoft   Windows   中运行。Sendkeys   也无法将   PRINT   SCREEN   按键   {PRTSC}   发送到任何应用程序。

转自:http://blog.csdn.net/superhoy/article/details/7310355

SendKeys发送组合键的更多相关文章

  1. WScript.SendKeys()的sendkeys发送组合键以及特殊字符

    SendKeys.Send("^+{TAB}"); 使用SendKeys将键击和组合键击发送到活动应用程序.此类无法实例化.若要发送一个键击给某个类并立即继续程序流,请使用Send ...

  2. C#中使用 SendMessage 向非顶端窗体发送组合键

    开门见山,不废话了, 直接举例说明一下: 比如发送ALT + F 以下是 用spy++截取的消息内容 <00001> 000310DC P WM_SYSKEYDOWN nVirtKey:V ...

  3. C#使用SendMessage发送组合键

    有时需要出发菜单功能,例如发送ALT + F打开应用程序的文件菜单,如何使用SendMessage实现呢? 使用用spy++截取的ALT+F的消息内容(如何使用spy++,请熟悉的高手指点下,我使用s ...

  4. [No00008B]远程桌面发送“Ctrl+Alt+Delete”组合键调用任务管理器

    向远程桌面发送"Ctrl+Alt+Delete"组合键的两种方法 1.在本地按下Ctrl+Alt+End,可以成功发送"Ctrl+Alt+Delete"组合键! ...

  5. VB发送后台按键和组合键

    http://files.cnblogs.com/files/liuzhaoyzz/VB%E5%8F%91%E9%80%81%E5%90%8E%E5%8F%B0%E7%BB%84%E5%90%88%E ...

  6. 给远程桌面发送“Ctrl+Alt+Delete”组合键

    首先: 在运行里,输入osk, 打开软键盘 然后,这时先按下本地键盘的Ctrl和Alt键,再点远程"软键盘"的"Del"键,成功发送"Ctrl+Alt ...

  7. PostMessage 向Windows窗口发送Alt组合键

    PostMessage 向Windows窗口发送Alt组合键 关于向Windows窗口发送Alt组合键的问题,这个真是经典问题啊,在网上找了一下,问的人N多,方法差不多, 但就是没有很好解决问题. 之 ...

  8. 虚拟机怎么发送ctrl+alt+delete组合键

    相信各位It的从业人员都遇到过安装了虚拟机搭建测试环境,可是在使用windows服务器版本操作系统的时候.出现要求发送ctrl+alt+delete组合键,才能登陆操作系统.为此咗嚛提供3个方法给您解 ...

  9. 再谈vc发送键盘、组合键消息

    关于向Windows窗口发送Alt组合键的问题,这个真是经典问题啊,在网上找了一下,问的人N多,方法差不多, 但就是没有很好解决问题. 之前找到一个能正确发送的code:(Alt+A) PostMes ...

随机推荐

  1. 可回味的js代码段

    1,关于bind()----- var name="global"; var person={ name:"person", hello:function(st ...

  2. pt-kill--- MySQL数据库CPU飙升紧急处理方法

    MySQL数据库CPU飙升紧急处理方法 [日期:2014-01-22] 来源:Linux社区  作者:hcymysql [字体:大 中 小]       运行平稳的数据库,如果遇到CPU狂飙,到80% ...

  3. ListViewItem中的图片不能动态改变的解决方法

    近期遇到了一个问题,就是我的listviewitem中有个图片,点击的时候须要变成还有一种图片.结果在getView()中设置了响应.可是能够运行.就是不起作用.在网上查了非常多资料也没有解决.最后发 ...

  4. 高速学会Mac上托管代码到github(具体解释)

    之前最開始的时候就一直在github浏览下载各种代码,然后弄了一下代码上传不知道咋弄就不了了之了.刚好近期有空余时间就研究了下github托管代码,这里就具体说说怎样高速的学会github上传你的代码 ...

  5. nginx tomcat glassfish session 复制配置

    1.nginx配置 [root@www1-nlb1 ~]# cat /usr/local/nginx/conf/nginx.conf | grep -v ^$ | grep -v ^# user  w ...

  6. JVM —— Java 对象占用空间大小计算

    零. 为什么要知道 Java 对象占用空间大小 缓存的实现: 在设计 JVM 内缓存时(不是借助 Memcached. Redis 等), 须要知道缓存的对象是否会超过 JVM 最大堆限制, 假设会超 ...

  7. luogu1967 货车运输 最大瓶颈生成树

    题目大意 给出一张图,给出q对点,求这两个点间权值最小边最大的路径,输出这个最小边权. 题解 我们先一条一条边建图.当建立的边使得图中形成环时,因为环中的每个节点只考虑是否连通和瓶颈大小,要想互相连通 ...

  8. String不可变性

    今天分析一下String,String有很多实用的特性,比如说“不可变性”,是工程师精心设计的艺术品.用final就是拒绝继承,防止内部属性或方法被破坏. 一,什么是不可变? String不可变很简单 ...

  9. js设计模式-适配器模式

    说明:适配器模式表面上看起来像门面模式.它们都要对别的对象进行包装并改变其呈现的接口.但是两者的差别在于它们如何改变接口.门面元素展现的是一个简化的接口,它并不提供额外的选择,而且有时为了方便完成常见 ...

  10. LeetCode.2-两个数字相加(Add Two Numbers)

    这是悦乐书的第340次更新,第364篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Medium级别的第1题(顺位题号是2).给定两个非空链表,表示两个非负整数. 数字以相反的顺序存储, ...