这个事情困扰了我好久,之前java写的计算器程序可以正常运行了,但是因为打包问题(尝试过多次,感觉好麻烦,个人比较崇尚“点子”,注重创新,思来想去之后,决定试试C#模仿java再写一遍),想要用C#模仿写一个,因此也遇到了很多问题,初学者啊,被欺负了:

(1)程序写好了,刚开始运行时,只能先用鼠标输入,键盘输入才能输进去,看了网上很多很多的问题,个人琢磨可能是焦点的问题,这个先不断言

(2)键盘监听,鼠标的click事件都能正常响应,但是用键盘输入时,就无法正常的输入了,每个按钮的keypress事件都是一样的处理代码,结果键盘输入时显示的都是一样的内容,比如之前键盘 / 鼠标输入3,之后键盘无论按那个键都是输入3,悲剧呀,

(3)综上所述,最后,我就琢磨了,看了网上N多的资料、问题,感觉是焦点的问题,难道是要更换按钮的焦点吗?但是按钮没了焦点又无法键盘输入了啊;我想用类似java里的那种lister监听,c#中有吗,直接pass,vs中的msdn也不会用,也没有类似java的api,初学者啊,被打击了

最后终于在网上淘到了一片有用的回答,还是在写baidu知道是系统推荐出来的,之前baidu搜咋搜不到呢???具体解决如下:

【】首先要设置窗体的keypreview 为 true,这里一定要是窗体的,代码,直接添加一条语句,就可以了:

this.KeyPreview = true;

拖控件者操作:点击窗体的标题(选中窗体),在属性中找到keypreview ,设为 true

【】然后设置 窗体名_KeyDown()事件,在这个方法中填入事件发生时的处理代码即可,代码,直接写方法,然后再窗体的时间注册一下就ok了:

private void Computer_KeyDown(object sender, KeyEventArgs e)()

拖控件者操作:点击窗体的标题(选中窗体),在属性中的事件里找到KeyDown,双击进入,在方法中填入事件发生时的处理代码即可

【】OK,按钮上不需要添加什么事件了,程序开始第一次运行后,问题(1)(2)(3)全部解决

链接见:http://zhidao.baidu.com/question/406512301.html

C# 计算器 如果设置键盘输入的监听事件的更多相关文章

  1. JPanel添加键盘监听事件

    因为在自己的游戏需求中谢了要用键盘控制飞机的移动,所以用到键盘监听事件,但是使用了JPanel之后添加了键盘监听事件,按相应的方向键飞机并没有反应.但是如果是为JFrame的内容面板加则会有反应. 为 ...

  2. js 获取当前焦点所在的元素、给元素和input控件添加键盘监听事件、添加页面级的键盘监听事件

    页面级的键盘监听事件 document.onkeydown = function (event) { var e = event || window.event || arguments.callee ...

  3. [置顶] java Gui 键盘监听事件

    简单写一个java Gui键盘监听事件,实现的效果就是按下键盘控制台输出你按下的键.比如:按下A控制台就输出A 效果如图: 以下把实现的效果分为几个步骤: 1.新建一个窗体类继承窗体: 2.给这个窗体 ...

  4. NavigationView头部设置监听事件

    直接写解决方法吧: 1.将XML里的静态引入删除: <android.support.design.widget.NavigationView android:id="@+id/nav ...

  5. UI设计篇·入门篇·简单动画的实现,透明动画/旋转动画/移动动画/缩放动画,混合动画效果的实现,为动画设置监听事件,自定义动画的方法

    基本的动画构成共有四种:透明动画/旋转动画/移动动画/缩放动画. 配置动画的方式有两种,一种是直接使用代码来配置动画效果,另一种是使用xml文档配置动画效果 相比而言,用xml文档写出来的动画效果,写 ...

  6. 为不具有change事件的html标签设置监听事件

    change事件会在文本内容或选项被更改时触发. 该事件仅适用于<input type="text">和<textarea>以及<select> ...

  7. python hook监听事件

    python hook监听事件 作者:vpoet mail:vpoet_sir@163.com # -*- coding: utf-8 -*- # # by oldj http://oldj.net/ ...

  8. JAVA JComboBox的监听事件(ActionListener、ItemListener)

    版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+]   参考资料: http://263229365.iteye.com/blog/1040329 https://www.ja ...

  9. Android——监听事件总结

    各种监听事件 1.按钮 Button(1)点击监听 btn_1.setOnClickListener(new View.OnClickListener() { (2)长按监听 btn_1.setOnL ...

随机推荐

  1. xml 充当简易数据库

    后台: 写入节点 public static void Update(string path, string node, string attribute, string value) { try { ...

  2. jQuery实现页面关键字搜索

    <style type="text/css"> .highlight { background-color:yellow; } </style> <s ...

  3. c#打包文件解压缩

    首先要引用一下类库:using Ionic.Zip;这个类库可以到网上下载. 下面对类库使用的封装方法: /// <summary>            /// 得到指定的输入流的ZIP ...

  4. C++数组与指针

    指向数组元素的指针 一个变量有地址,一个数组包含若干元素,每个数组元素都在内存中占用存储单元,它们都有相应的地址.指针变量既然可以指向变量,当然也可以指向数组元素(把某一元素的地址放到一个指针变量中) ...

  5. jquery ajax 使用

    异步刷新实现方式有多种,也可以借助JS的多种框架,下面是使用JQuery框架实现的AJAX 验证用户名是否存在 jQuery.ajax概述 HTTP 请求加载远程数据. 通过jQuery 底层 AJA ...

  6. Java "==和equals区别"

    本文转载至中软国际电子政务部Jeff Chi总结,转载请说明出处. 概述:        A.==可用于基本类型和引用类型:当用于基本类型时候,是比较值是否相同:当用于引用类型的时候,是比较对象是否相 ...

  7. 属性"XmlFileName"的代码生成失败

    属性"XmlFileName"的代码生成失败.错误是:"未将对象引用设置到对象实例" 解决:   控件修改造成,关闭打开页面,重新生成

  8. (Problem 49)Prime permutations

    The arithmetic sequence, 1487, 4817, 8147, in which each of the terms increases by 3330, is unusual ...

  9. spss

    编辑 SPSS(Statistical Product and Service Solutions),“统计产品与服务解决方案”软件.最初软件全称为“社会科学统计软件包” (SolutionsStat ...

  10. LED板上芯片(COB)封装流程

    LED 板上芯片(Chip On Board,COB)封装流程是,首先在基底表面用导热环氧树脂(一般用掺银颗粒的环氧树脂)覆盖硅片安放点, 然后将硅片 间接安放正在基底表面,热处理至硅片牢固地固定正在 ...