use*_*444 7 c# key char special-characters
我有一个特殊的字符(/ @)我想转换为Keys.
我目前正在使用这个:
Keys k = (Keys)'/';
Run Code Online (Sandbox Code Playgroud)
在调试时,我得到k等于:
LButton | RButton | MButton | 返回| 空间类型 - System.Windows.Forms.Keys
k的键码假设是111.
注意:代码适用于大写字母,例如:
Keys k = (Keys)'Z';
Run Code Online (Sandbox Code Playgroud)
在这种情况下,k的密钥代码是90,这没关系.
我正试图找到一种方法将特殊字符转换为键.(或正确的密钥代码)
尝试使用以下方式全局发送密钥:
public static void SendKey(byte keycode)
{
const int KEYEVENTF_EXTENDEDKEY = 0x1;
const int KEYEVENTF_KEYUP = 0x2;
keybd_event(keycode, 0x45, KEYEVENTF_EXTENDEDKEY, (UIntPtr)0);
keybd_event(keycode, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, (UIntPtr)0);
}
SendKey((byte)Keys.{SomethingHere});
Run Code Online (Sandbox Code Playgroud)
Van*_*dze 16
这是个老问题,但我用过这个:
Keys k = (Keys)char.ToUpper(c);
Run Code Online (Sandbox Code Playgroud)
如果char值为a(带代码97),则转换为A(带代码65)映射到Keys.A等等......
希望这会对某人有所帮助.
| 归档时间: |
|
| 查看次数: |
16808 次 |
| 最近记录: |