⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 16971.html

📁 VB技巧问答10000例 VB技巧问答10000例
💻 HTML
字号:
<html>
  <head>
    <title>不太容易</title>
  </head>
  <body bgcolor="#FFFFFF" vlink="#808080">
    <center>
      <h1>不太容易</h1>
    </center>
<hr size=7 width=75%>

<hr size=7 width=75%><p>
Posted by <a href="mailto:cww5@mail.ncku.edu.tw">cww</a> on August 10, 1999 at 09:11:03:<p>
In Reply to: <a href="16957.html">How to distinguish the , and  on both side of the keyboard?</a> posted by Lisa Lin on August 10, 1999 at 07:49:58:<p>
要拦截wm_keydown/wm_keyup的讯息,<br>  其lParam 第16-23 个bits便是scan code<br>但是要如何拦截呢?<br>1.使用subclass 但是这只能使某个Window(如Form)拦截<br>该讯息,如果keyboard focus在Form上的textbox等<br>sub control便栏不到,除非一并拦截该sub control的<br>window procedure<br>2.使用keyboard hook,这可以拦截该Process所有<br>keyboard的动作,相同的其Hook Procedure传入的<br>lParam便有Scan Code(同上所述在16-23 bits),但<br>不同的Process便拦不到,除非使用remote hook,但是<br>这不是单单VB做得到,需用c/delphi等做出一般用的<br>.Dll再给VB呼叫<br>3.使用JournalRecordHook,其Hook Procedure传入的<br>message如果是keyboard message则另外的paramH参数<br>便是scan code,这可以hook所有的Process,但只有一个<br>Process可用JournalRecordHook,而且系统资源很吃重<br>
<br>
<br><hr size=7 width=75%><p>
<a name="followups">Follow Ups:</a><br>
<ul><!--insert: 16971-->
</ul><!--end: 16971-->
<br><hr size=7 width=75%><p>

</body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -