C# 计算器 如果设置键盘输入的监听事件
这个事情困扰了我好久,之前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# 计算器 如果设置键盘输入的监听事件的更多相关文章
- JPanel添加键盘监听事件
因为在自己的游戏需求中谢了要用键盘控制飞机的移动,所以用到键盘监听事件,但是使用了JPanel之后添加了键盘监听事件,按相应的方向键飞机并没有反应.但是如果是为JFrame的内容面板加则会有反应. 为 ...
- js 获取当前焦点所在的元素、给元素和input控件添加键盘监听事件、添加页面级的键盘监听事件
页面级的键盘监听事件 document.onkeydown = function (event) { var e = event || window.event || arguments.callee ...
- [置顶] java Gui 键盘监听事件
简单写一个java Gui键盘监听事件,实现的效果就是按下键盘控制台输出你按下的键.比如:按下A控制台就输出A 效果如图: 以下把实现的效果分为几个步骤: 1.新建一个窗体类继承窗体: 2.给这个窗体 ...
- NavigationView头部设置监听事件
直接写解决方法吧: 1.将XML里的静态引入删除: <android.support.design.widget.NavigationView android:id="@+id/nav ...
- UI设计篇·入门篇·简单动画的实现,透明动画/旋转动画/移动动画/缩放动画,混合动画效果的实现,为动画设置监听事件,自定义动画的方法
基本的动画构成共有四种:透明动画/旋转动画/移动动画/缩放动画. 配置动画的方式有两种,一种是直接使用代码来配置动画效果,另一种是使用xml文档配置动画效果 相比而言,用xml文档写出来的动画效果,写 ...
- 为不具有change事件的html标签设置监听事件
change事件会在文本内容或选项被更改时触发. 该事件仅适用于<input type="text">和<textarea>以及<select> ...
- python hook监听事件
python hook监听事件 作者:vpoet mail:vpoet_sir@163.com # -*- coding: utf-8 -*- # # by oldj http://oldj.net/ ...
- JAVA JComboBox的监听事件(ActionListener、ItemListener)
版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 参考资料: http://263229365.iteye.com/blog/1040329 https://www.ja ...
- Android——监听事件总结
各种监听事件 1.按钮 Button(1)点击监听 btn_1.setOnClickListener(new View.OnClickListener() { (2)长按监听 btn_1.setOnL ...
随机推荐
- xml 充当简易数据库
后台: 写入节点 public static void Update(string path, string node, string attribute, string value) { try { ...
- jQuery实现页面关键字搜索
<style type="text/css"> .highlight { background-color:yellow; } </style> <s ...
- c#打包文件解压缩
首先要引用一下类库:using Ionic.Zip;这个类库可以到网上下载. 下面对类库使用的封装方法: /// <summary> /// 得到指定的输入流的ZIP ...
- C++数组与指针
指向数组元素的指针 一个变量有地址,一个数组包含若干元素,每个数组元素都在内存中占用存储单元,它们都有相应的地址.指针变量既然可以指向变量,当然也可以指向数组元素(把某一元素的地址放到一个指针变量中) ...
- jquery ajax 使用
异步刷新实现方式有多种,也可以借助JS的多种框架,下面是使用JQuery框架实现的AJAX 验证用户名是否存在 jQuery.ajax概述 HTTP 请求加载远程数据. 通过jQuery 底层 AJA ...
- Java "==和equals区别"
本文转载至中软国际电子政务部Jeff Chi总结,转载请说明出处. 概述: A.==可用于基本类型和引用类型:当用于基本类型时候,是比较值是否相同:当用于引用类型的时候,是比较对象是否相 ...
- 属性"XmlFileName"的代码生成失败
属性"XmlFileName"的代码生成失败.错误是:"未将对象引用设置到对象实例" 解决: 控件修改造成,关闭打开页面,重新生成
- (Problem 49)Prime permutations
The arithmetic sequence, 1487, 4817, 8147, in which each of the terms increases by 3330, is unusual ...
- spss
编辑 SPSS(Statistical Product and Service Solutions),“统计产品与服务解决方案”软件.最初软件全称为“社会科学统计软件包” (SolutionsStat ...
- LED板上芯片(COB)封装流程
LED 板上芯片(Chip On Board,COB)封装流程是,首先在基底表面用导热环氧树脂(一般用掺银颗粒的环氧树脂)覆盖硅片安放点, 然后将硅片 间接安放正在基底表面,热处理至硅片牢固地固定正在 ...