黑马程序员技术交流社区

标题: 怎么知道用户按的是那个键 [打印本页]

作者: 李君言    时间: 2013-5-5 00:26
标题: 怎么知道用户按的是那个键
本帖最后由 李君言 于 2013-5-6 11:09 编辑

string a =Console.ReadLine();
我知道这个是获取用户输入的内容
Console.ReadKey();
让用户按键,能不能获取用户按的是什么键?
作者: 李君言    时间: 2013-5-5 00:45
尹桥印 发表于 2013-5-5 00:33
这个是返回用户按的什么键。希望可以帮到你

为什么获得的值ke会是大写呢?
作者: 陈晖    时间: 2013-5-5 08:25
ConsoleKeyInfo cki = Console.ReadKey();
cki.KeyChar就是按下的键。
:)
作者: 张伟86    时间: 2013-5-5 08:28
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;

  5. namespace ConsoleApplication4
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             char inputChar = Console.ReadKey().KeyChar;            

  12.             Console.WriteLine("\n{0}",inputChar);
  13.             Console.ReadKey();
  14.         }
  15.     }
  16. }
复制代码

作者: 张伟86    时间: 2013-5-5 08:39
陈晖 发表于 2013-5-5 08:25
ConsoleKeyInfo cki = Console.ReadKey();
cki.KeyChar就是按下的键。

:L抢楼真快!
作者: chensc    时间: 2013-5-5 08:51
学习学习!
作者: 黄晓波    时间: 2013-5-5 12:16
本帖最后由 黄晓波 于 2013-5-5 12:28 编辑
  1.         static void Main(string[] args)
  2.         {
  3.             //得到按下的键,不区分大小写,都显示为大写
  4.             ConsoleKey consoleKey = Console.ReadKey().Key;
  5.             Console.WriteLine();
  6.             Console.WriteLine(consoleKey);

  7.             //得到按下的键,区分大小写
  8.             char consoleKeyInfo = Console.ReadKey().KeyChar;
  9.             Console.WriteLine();
  10.             Console.WriteLine(consoleKeyInfo);

  11.             //得到按下的组合键,如按下Ctrl+Alt+Shift+J,显示结果为:Alt,Ctrl,Shift
  12.             ConsoleModifiers consleModifiers = Console.ReadKey().Modifiers;            
  13.             Console.WriteLine();
  14.             Console.WriteLine(consleModifiers);
  15.             
  16.             Console.ReadKey();
  17.         }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2