实现按键功能 怎么在控制台中写段代码实现窗体中的按键功能?高手指教!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1.设置form的属性form.KeyPreview = true;2.在为form添加Key事件,下面以KeyDown进行说明private void Form1_KeyDown(object sender, KeyEventArgs e){ if (e.KeyData == Keys.A) // 判断按键是否为A { MessageBox.Show(e.KeyValue.ToString()); 显示按键的值 }}大功告成 楼主说的是用控制台应用程序捕获键盘事件?给你一个捕获关闭控制台的事件供应参考1using System;2using System.Runtime.InteropServices;3using System.Threading;4using System.Diagnostics;56namespace xmlpusher7{8 public delegate bool ConsoleCtrlDelegate(int dwCtrlType);9 /**//// <summary> 10 /// Class1 的摘要说明。 11 /// </summary> 12 class Class113 {14 16 [DllImport("kernel32.dll")]17 private static extern bool SetConsoleCtrlHandler(ConsoleCtrlDelegate HandlerRoutine, bool Add);18 //一个 Ctrl+c 的信号被接收,该信号来自键盘,或来自 GenerateConsoleCtrlEvent函数 19 private const int CTRL_C_EVENT = 0;20 //一个 Ctrl + Break 信号被接收,该信号或来自键盘,或来自GenerateConsoleCtrlEvent函数 21 private const int CTRL_BREAK_EVENT = 1;22 //当用户关闭系统 Console 时,系统会发送此信号到此 23 private const int CTRL_CLOSE_EVENT = 2;24 //当用户退出系统时系统会发送这个信号给所有的Console程序。该信号不能显示是哪个用户退出。 25 private const int CTRL_LOGOFF_EVENT = 5;26 //当系统将要关闭时会发送此信号到所有Console程序 27 private const int CTRL_SHUTDOWN_EVENT = 6;28 //// <summary> 29 /// 应用程序的主入口点。 30 /// </summary> 31 [STAThread]32 static void Main(string[] args)33 {34 // 35 // TODO: 在此处添加代码以启动应用程序 36 // 37 Class1 cl = new Class1();38 }3940 public Class1()41 {42 ConsoleCtrlDelegate newDategate = new ConsoleCtrlDelegate(HandlerRoutine);43 bool re = SetConsoleCtrlHandler(newDategate, true);44 if (re)45 {46 Console.WriteLine("Set SetConsoleCtrlHandler success!!");47 }48 else49 {50 Debug.WriteLine("Set SetConsoleCtrlHandler Error!!");51 AsReportFile.WriteFile("","test.txt","who close?");52 }53 Console.ReadLine();54 }5556 bool HandlerRoutine(int CtrlType)57 {58 switch (CtrlType)59 {60 case CTRL_CLOSE_EVENT:61 for (int i = 0; i < 100; i++)62 {63 Console.WriteLine("i is:{0}", i);64 Thread.Sleep(1000);65 }66 break;67 }68 return false;69 }70 }71} 字符串转化成int 串口问题 这条不懂啊,想不通啊,求前辈解释一下。先谢谢 大侠,如何转换日期格式啊?? 格式化输出的问题 c++的结构如何用c#来声明? datagrid 查找的问题! 工号与出库单绑定问题 请帮我看看这个Exception说了些什么,谢谢! 做了几年程序,但没多大收获,想致力于炒股,但这方面一点都不知,能否提供一些用C#做炒股方面的技术,也可推荐几个这方面的好网站或书之 自定义Exception发现的问题! 关于资源的释放,听起来很简单的问题。!!
2.在为form添加Key事件,下面以KeyDown进行说明private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyData == Keys.A) // 判断按键是否为A
{
MessageBox.Show(e.KeyValue.ToString()); 显示按键的值
}
}大功告成
给你一个捕获关闭控制台的事件供应参考
1using System;
2using System.Runtime.InteropServices;
3using System.Threading;
4using System.Diagnostics;
5
6namespace xmlpusher
7{
8 public delegate bool ConsoleCtrlDelegate(int dwCtrlType);
9 /**//// <summary>
10 /// Class1 的摘要说明。
11 /// </summary>
12 class Class1
13 {
14
16 [DllImport("kernel32.dll")]
17 private static extern bool SetConsoleCtrlHandler(ConsoleCtrlDelegate HandlerRoutine, bool Add);
18 //一个 Ctrl+c 的信号被接收,该信号来自键盘,或来自 GenerateConsoleCtrlEvent函数
19 private const int CTRL_C_EVENT = 0;
20 //一个 Ctrl + Break 信号被接收,该信号或来自键盘,或来自GenerateConsoleCtrlEvent函数
21 private const int CTRL_BREAK_EVENT = 1;
22 //当用户关闭系统 Console 时,系统会发送此信号到此
23 private const int CTRL_CLOSE_EVENT = 2;
24 //当用户退出系统时系统会发送这个信号给所有的Console程序。该信号不能显示是哪个用户退出。
25 private const int CTRL_LOGOFF_EVENT = 5;
26 //当系统将要关闭时会发送此信号到所有Console程序
27 private const int CTRL_SHUTDOWN_EVENT = 6;
28 //// <summary>
29 /// 应用程序的主入口点。
30 /// </summary>
31 [STAThread]
32 static void Main(string[] args)
33 {
34 //
35 // TODO: 在此处添加代码以启动应用程序
36 //
37 Class1 cl = new Class1();
38 }
39
40 public Class1()
41 {
42 ConsoleCtrlDelegate newDategate = new ConsoleCtrlDelegate(HandlerRoutine);
43 bool re = SetConsoleCtrlHandler(newDategate, true);
44 if (re)
45 {
46 Console.WriteLine("Set SetConsoleCtrlHandler success!!");
47 }
48 else
49 {
50 Debug.WriteLine("Set SetConsoleCtrlHandler Error!!");
51 AsReportFile.WriteFile("","test.txt","who close?");
52 }
53 Console.ReadLine();
54 }
55
56 bool HandlerRoutine(int CtrlType)
57 {
58 switch (CtrlType)
59 {
60 case CTRL_CLOSE_EVENT:
61 for (int i = 0; i < 100; i++)
62 {
63 Console.WriteLine("i is:{0}", i);
64 Thread.Sleep(1000);
65 }
66 break;
67 }
68 return false;
69 }
70 }
71}