zoukankan      html  css  js  c++  java
  • KeyDown和KeyPress的区别

        虽然从字面理解, KeyDown是按下一个键的意思, 但实际上二者的根本区别是, 系统由KeyDo
    wn返回键盘的代码, 然后由TranslateMessage函数翻译成成字符, 由KeyPress返回字符值.
    因此在KeyDown中返回的是键盘的代码, 而KeyPress返回的是ASCII字符. 所以根据你的目的
    , 如果只想读取字符, 用KeyPress, 如果想读各键的状态, 用KeyDown.
    说KeyDown是按下, KeyPress是按下并松开, 是不对的. 如果你一直按着键呢? 这时不断地产
    生KeyDown和KeyPress.


      OnKeyPress   只能在单个键被按下才触发的,而且对于shift,   alt,   ctrl   和   这些
    组合件,比如ctrl   +   f1是不会触发这个消息的。     他处理的消息可能是   WM_CHAR
      OnKeyDowm   就可以捕获这些全部的按键。  
      他实际是处理   WM_KEYDOWN消息。  
      可以理解为   OnKeyDown是OnKeyPress的超集。
     
      有一个区别是keypress是对简单字符的反应  
      不会对shift,F1的功能按钮有反应  
      keydown则都可以有反应 

  • 相关阅读:
    c# 图像转化成灰度图
    文件操作 流
    GBK UTF8 GB2312 流
    助力奥巴马,拯救大气层
    ASP.NET 缓存技术
    GridView 和 ViewState 来实现条件查寻
    把日期按指定格式输出
    创业灵感淘宝网
    文件_上传_下载
    java23种设计模式与追MM
  • 原文地址:https://www.cnblogs.com/spiritofcloud/p/3898379.html
Copyright © 2011-2022 走看看