2015-10-14 63 views
3

我试图发送权 + Ctrl键RichTextBox。但是默认情况下它会发送左键。模拟右Shift + Ctrl键与SendKeys.Send()

SendKeys.Send("^+"); 

反正是有模拟右 + Ctrl键

+0

'{} RSHIFT作为评论+'应该工作的权利? – kevintjuh93

+0

@ kevintjuh93'{RSHIFT}''抛出关键字“RSHIFT”不valid.' –

+0

这是奇怪,根据一些消息来源它应该工作。无论如何,你现在可能需要'PostMessage'。你能否告诉我为什么你需要将这些密钥发送给你的RTB? – kevintjuh93

回答

0

是的,你可以,你可以检查Virtual-Key Codes其中对于右shift键和右侧的控制键的代码是

VK_RSHIFT 0xA1 
VK_RCONTROL 0xA3 

所以,你可以像

public const int VK_RSHIFT = 0xA1; 
public const int VK_RCONTROL= 0xA3; 

你可以尝试这样的:

SendKeys.Send(VirtualKeyCode.VK_RSHIFT); 

否则你可以使用Keys Enumeration

指定键代码和修饰符。

其指定为右移位键和RControlKey用于右控制键

RShiftKey。

或kevintjuh93

SendKeys.Send("^({RSHIFT}+)") 
+0

你难道没有在'Keys'类C#? – kevintjuh93

+0

那么我应该如何使用这些代码发送密钥。像SendKeys.Send(“0xA1”+“0xA3”);'? –

+0

@ kevintjuh93: - 是的,更新了我的答案。 –

相关问题