winform textbox控件keydown、keypress、keyup简单介绍
1、执行先后顺序:
keydown-->keypress-->keyup
2、按键相关操作:
1)keydown和keyup参数类型KeyEventArgs(提供了KeyCode)实现形式:e.KeyCode==Keys.A。
keypress参数类型KeyPressEventArgs(提供了KeyChar)实现形式:e.KeyChar=='A'
2)keyup事件会回传到上一层。e.g. 点击Enter,Textbox执行完keyup后,窗体同样可以捕获到enter。
keypress和keydown则会阻止外传。
3、取消用户输入:
keypress:e.Handler=true;
keydown:e.SuppressKeyPress(); SuppressKeyPress方法可以取消KeyPress事件,注意此时KeyUp事件也被取消了。(待测)
4、键盘反馈:
组合键ctrl+A形式用keydown。
keydown:e.KeyCode会出现相同情况,不能详细区分。e.g. 加减号(-+)返回同一KeyCode。=====>系统原因
winform textbox控件keydown、keypress、keyup简单介绍的更多相关文章
- Winform Textbox控件字体垂直居中
项目中遇到要求Textbox内的字体垂直居中的问题,在网上找一直没有理想的解决方案.后来发现可以通过设置控件的字体来达到预期的效果. 默认的Textbox的Font属性为 “宋体, 9pt”,效果如下 ...
- 只允许输入数字的TextBox控件
[实例说明] 可以在TextBox控件中轻松地输入文本信息,输入的文本信息可以包括字母.数字.汉字等. 如果需要用户在TextBox控件中填写年龄信息,那么年龄信息应当只允许数字,怎么限制用户输入其他 ...
- C#中设置TextBox控件中仅可以输入数字且设置上限
首先设置只可以输入数字: 首先设置TextBox控件的KeyPress事件:当用户按下的键盘的键不在数字位的话,就禁止输入 private void textBox1_KeyPress(object ...
- c# winform 在一个窗体中使用另一个窗体中TextBox控件的值——解决办法
[前提]一个winform应用程序项目中,窗体B,需要使用 窗体A 中一个TextBox控件的值,进行计算等操作. [解决方案] 1.在窗体A中定义:public static double a;// ...
- Winform中TextBox控件开启自动提示补全功能
问题:Winform开发中,有一个TextBox控件用以输入姓名,现希望在输入名字时能够自动提示所有可能的名字. 解答:winform中的TextBox控件含有如下三个属性: ① AutoComp ...
- winform学习(7)Label控件、Button控件、TextBox控件
Label控件是System.Windows.Forms.Label 类提供的控件. 作用:主要用来提供其他控件的描述文字,例如:登录窗体上的用户名.密码(输入框前面的字) Button控件是Syst ...
- keydown,keypress,keyup三者之间的区别
最近看了Javascript高级教程中对过滤输入的介绍,想实现比如电话号码中不能包好非数值的字符,而相应文本中插入字符的操作是keypress事件,所以就想通过阻止这个事件的默认事件行为来阻止这个事件 ...
- C# Windows - TextBox 控件
.NET Framework内置了两个基本控件来提取用户输入的文本: TextBox和RichTextBox.这两个控件都派生于基类TextBoxBase,而TextBoxBase派生于Control ...
- keyDown keyPress keyUp 事件的区别
keyDown keyPress keyUp 事件的区别 一 触发顺序 显而易见,事件发生的顺序是: keydown --> keypress --> keyup 当按住一个键一段时间后 ...
随机推荐
- [Delphi] 设置线程区域语言防止乱码
uses Windows; 在工程文件中添加一句代码,如下: Application.Initialize; //添加以下一句解决外文系统乱码问题 SetThreadLocale(DWORD(Wor ...
- MS SQL Server 无法添加、更新或删除从msx服务器上发起的作业(或其步骤或调度)
因为 服务器 的名字 更改过 use msdb go SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVE ...
- auto_ptr 浅析(转)
auto_ptr是C++标准库中(<utility>)为了解决资源泄漏的问题提供的一个智能指针类模板(注意:这只是一种简单的智能指针) auto_ptr的实现原理其实就是RAII,在构造的 ...
- sql server2008本地连接选择windows身份验证无法登陆的解决办法
1.安装完sqlserver数据库,本地连接登录不了 解决办法:进入cmd,输入net start mssqlserver 服务启动后,再次用windows身份验证就可以登陆本地数据库了
- zk分布式锁-排它锁简单实现
package Lock; import java.util.concurrent.CountDownLatch;import java.util.concurrent.TimeUnit;import ...
- Spring-JDBC模板-事务
Spring-JDBC模板-事务 1.事务概述 什么是事务 逻辑上的一组操作,组成这组操作的各个单元要么全部成功要么全部失败 事务的特点ACID 原子性:事务不可分割(事务要么成功,要么失败) 一致性 ...
- SIEBEL GET最新时提示表异常
无法GET最新,则将此表GET一次,CHECK OUT下来,再UNDO CHECK IN即可
- shell中比较字符串大小,>和<前需要加上\进行转义,否则会输出到文件了
遇到的问题:进行了目录的字符串大小比较,结果在目录下生成了很多的新文件 解决方法:在>和<的比较符号前增加\转义 代码如下: #/usr/bin/bash cd /opt/scf/se ...
- PLSQL启动很慢的问题
最近重新做了系统,win7 64位系统上装了oracle10g,plsql10.发现plsql启动比较慢. 解决方法: 首先停止打印机服务:Print Spooler,然后将这个服务设置为手动模式.
- mybatis逆向工程的注意事项:mapper文件内容不是覆盖而是追加
XXXMapper.xml文件已经存在时,如果进行重新生成则mapper.xml文件内容不被覆盖而是进行内容追加,结果导致mybatis解析失败. 解决方法:删除原来已经生成的mapper xml文件 ...