我试图从键盘读取字符到一些variables进一步处理。 我有以下列表,如果用户input,我想识别。
键盘input列表:
信
[
]
~
^
数字
部分代码:
voID HookManager_KeyUp(object sender,KeyEventArgs e) { string test = e.KeyCode.ToString();
这里数字,字母和方括号可以工作,但是需要shift键的^被错误地读取。 例如。 它将读取^作为string值6,而不是^应该是。 这是其他的读物
windows内存和页面文件的使用情况
如何模块化PowerShell脚本
单声道是否支持System.Drawing和System.Drawing.Printing?
反转WPF图像的颜色
在windows应用程序跟踪屏幕录像机
[= OemOpenBracket,
] = Oem6,
〜= OemTilde,
^ = D6。
所以D6是没有意义的任何帮助,将不胜感激。
谢谢
AA
同时跟踪多个进程
Powershell ScriptBlock不执行
在WPF中播放animation – 支持的图像格式?
检查两个NTAccount对象的相等性
任何工具来分析wmv文件格式?
除了检查KeyCode属性之外,还需要检查e.Shift是否为true。
这样做会更容易:
私有只读字符串VALID_KEYS =“[]〜^ ABCDEFGHIJKLMnopQRSTUVWXYZ0123456789”;
private voID txtBox_KeyPress(object sender,KeyPressEventArgs e){
if(VALID_KEYS.IndexOf(char.toupper(e.KeyChar))!= -1 || e.KeyChar ==(char)8)
e.Handled = false;
其他
e.Handled = true;
}
这可能有一些帮助…
protected overrIDe bool ProcessCmdKey(ref Message msg,Keys keyData) { const int WM_KEYDOWN = 0x100; const int WM_SYSKEYDOWN = 0x104; if ((msg.Msg == WM_KEYDOWN) || (msg.Msg == WM_SYSKEYDOWN)) { switch (keyData) { case Keys.Shift | Keys.D6: //Your code break; } } return base.ProcessCmdKey(ref msg,keyData); }
谢谢,Ram
总结以上是内存溢出为你收集整理的如何从键盘上读取字符?全部内容,希望文章能够帮你解决如何从键盘上读取字符?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)