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

📄 right13-1.htm

📁 Visual C++面向对象程序设计教程(配套习题资源)
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<html>

<head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>第 13 章</title>
<base target="rbottom">
<style>
<!--
.右标题   { font-size: 10pt; color: #000080; text-indent: 0; margin: 0 }
.右内容   { font-size: 10pt; text-align: left; text-indent: 0; line-height: 100%; margin: 
               0 }
-->
</style>
</head>

<body>

<p style="line-height: 100%; margin-top: 0; margin-bottom: 0"> </p>
<p style="line-height: 100%; margin-top: 0; margin-bottom: 0"><span style="position: absolute; left: 4; top: -8"><img border="0" src="1.gif" width="63" height="70"></span></p>
<p style="line-height: 100%; margin-top: 0; margin-bottom: 0">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p style="line-height: 100%; text-indent: 0; margin: 0" class="右标题" align="left">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                                                        
&nbsp;&nbsp;&nbsp; <span style="background-color: #CCFF99">第 13 章</span><span style="background-color: #CCFF99">&nbsp;                                               
</span>&gt;<span style="background-color: #CCFF99"> 第 1 节 </span>&gt;<span style="background-color: #CCFF99">  
 13.1 键盘</span></p>                  
<hr color="#008000" size="1">

<p style="line-height: 150%; text-indent: 0; margin: 0" class="右标题" align="left"><font size="2"><font LANG="ZH-CN">当用户按下或释放一个键时,键盘驱动程序</font>KEYBOARD.DRV<font LANG="ZH-CN">中的键盘中断处理程序对所按键进行编码,并调用</font>Windows<font LANG="ZH-CN">的用户模块</font>USER.EXE<font LANG="ZH-CN">中的有关程序来生成键盘消息,最终发送到应用程序的消息队列中等待处理,而处理这些消息则是由应用程序的窗口过程来具体完成的。</font></font></p>
<p style="line-height: 150%; text-indent: 0; margin: 0" class="右标题" align="left"> </p>
<p ALIGN="JUSTIFY" style="line-height: 100%; margin-top: 0; margin-bottom: 0"><font size="2">1.   
<font LANG="ZH-CN">基本概念</font></font></p>
<p ALIGN="JUSTIFY" style="line-height: 100%; margin-top: 0; margin-bottom: 0"><font LANG="ZH-CN" size="2">(1)   
输入焦点</font></p>
<font SIZE="3">
<p ALIGN="JUSTIFY" style="line-height: 100%; margin-top: 0; margin-bottom: 0"></font><font size="2"><font LANG="ZH-CN">一般情况下一个应用程序有多个窗口,而键盘消息只能被一个窗口接收,接收键盘消息的窗口称为有“输入焦点”的窗口,具有输入焦点的窗口称为活动窗口。当某一个窗口成为活动窗口时,</font>Windows<font LANG="ZH-CN">会加亮显示其标题栏或窗口边框。</font></font></p>
<font SIZE="3">
<p ALIGN="JUSTIFY" style="line-height: 100%; margin-top: 5; margin-bottom: 0"></font><font size="2"><font LANG="ZH-CN">窗口函数通过捕获</font>WM_SETFOCUS<font LANG="ZH-CN">和</font>WM_KILLFOCUS<font LANG="ZH-CN">消息以确定当前窗口是否具有输入焦点。</font>WM_SETFOCUS<font LANG="ZH-CN">表明窗口具有输入焦点,</font>WM_KILLFOCUS<font LANG="ZH-CN">表明窗口正失去输入焦点。</font></font></p>
<p ALIGN="JUSTIFY" style="line-height: 100%; margin-top: 5; margin-bottom: 0"><font LANG="ZH-CN" size="2">(2)   
虚拟码</font></p>
<p ALIGN="JUSTIFY" style="line-height: 100%; margin-top: 0; margin-bottom: 0"><font size="2"><font LANG="ZH-CN">扫描码是与设备有关的键的标识;而虚拟码是由</font>Windows<font LANG="ZH-CN">系统定义的与设备无关的键的标识,它的值存放在键盘消息的</font>wParam<font LANG="ZH-CN">参数中,用以标识哪一个键被按下或释放,常用的虚拟码如<a href="table13-1.htm">表</a></font><a href="table13-1.htm">13-1</a><font LANG="ZH-CN">所示。</font></font></p>
<p ALIGN="CENTER" style="line-height: 100%; margin-top: 0; margin-bottom: 0"> </p>
<p ALIGN="JUSTIFY" style="line-height: 100%; margin-top: 0; margin-bottom: 0"><font size="2">2.   
<font LANG="ZH-CN">键盘消息</font></font></p>
<font SIZE="3">
<p ALIGN="JUSTIFY" style="line-height: 100%; margin-top: 0; margin-bottom: 0"></font><font size="2"><font LANG="ZH-CN">键盘消息可以分成两类,即按键消息和字符消息。每当用户按下或松开一个键时,就产生了一个按键消息。当一个按键的组合产生了一个可以显示的字符时,就产生了一个字符消息。</font></font></p>
<blockquote>
  <p ALIGN="JUSTIFY" style="line-height: 150%; margin-top: 0; margin-bottom: 0"><font LANG="ZH-CN" size="2">1.   
  按键消息</font></p>
  <table border="1" cellspacing="0" cellpadding="0" width="658" style="border-collapse: collapse; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; border-style: none; border-width: medium" bgcolor="#CCFFCC">
    <tr>
      <td width="95" valign="top" style="border-left-style: none; border-left-width: medium; border-right: .5pt solid windowtext; border-top: .5pt solid windowtext; border-bottom: .5pt solid windowtext; padding-left: 5.4pt; padding-right: 5.4pt; padding-top: 0cm; padding-bottom: 0cm" align="center">
        <p class="MsoNormal"><span style="font-size:10.0pt;font-family:宋体;mso-ascii-font-family:
  &quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">分类<u1:p>
        </span><span lang="EN-US"><o:p>
        </o:p>
        </span></p>
      </td>
      <td width="76" valign="top" style="mso-border-left-alt: solid windowtext .5pt; border-left-style: none; border-left-width: medium; border-right: .5pt solid windowtext; border-top: .5pt solid windowtext; border-bottom: .5pt solid windowtext; padding-left: 5.4pt; padding-right: 5.4pt; padding-top: 0cm; padding-bottom: 0cm" align="center">
        <p class="MsoNormal"><span style="font-size:10.0pt;font-family:宋体;mso-ascii-font-family:
  &quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">按键<u1:p>
        </span><span lang="EN-US"><o:p>
        </o:p>
        </span></p>
      </td>
      <td width="255" valign="top" style="mso-border-left-alt: solid windowtext .5pt; border-left-style: none; border-left-width: medium; border-right: .5pt solid windowtext; border-top: .5pt solid windowtext; border-bottom: .5pt solid windowtext; padding-left: 5.4pt; padding-right: 5.4pt; padding-top: 0cm; padding-bottom: 0cm" align="center">
        <p class="MsoNormal"><span style="font-size:10.0pt;font-family:宋体;mso-ascii-font-family:
  &quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">产生消息<u1:p>
        </span><span lang="EN-US"><o:p>
        </o:p>
        </span></p>
      </td>
      <td width="142" valign="top" style="width:106.55pt;border-top:solid windowtext .5pt;
  border-left:none;border-bottom:solid windowtext .5pt;border-right:none;
  mso-border-left-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt" align="center">
        <p class="MsoNormal"><span style="font-size:10.0pt;font-family:宋体;mso-ascii-font-family:
  &quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">处理程序<u1:p>
        </span><span lang="EN-US"><o:p>
        </o:p>
        </span></p>
      </td>
    </tr>
    <tr>
      <td width="95" valign="top" style="mso-border-top-alt: solid windowtext .5pt; border-left-style: none; border-left-width: medium; border-right: .5pt solid windowtext; border-top-style: none; border-top-width: medium; border-bottom: .5pt solid windowtext; padding-left: 5.4pt; padding-right: 5.4pt; padding-top: 0cm; padding-bottom: 0cm">
        <p class="MsoNormal"><span style="font-size:10.0pt;font-family:宋体;mso-ascii-font-family:
  &quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">系统按键消息<u1:p>
        </span><span lang="EN-US"><o:p>
        </o:p>
        </span></p>
      </td>
      <td width="76" valign="top" style="mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; border-left-style: none; border-left-width: medium; border-right: .5pt solid windowtext; border-top-style: none; border-top-width: medium; border-bottom: .5pt solid windowtext; padding-left: 5.4pt; padding-right: 5.4pt; padding-top: 0cm; padding-bottom: 0cm">
        <p class="MsoNormal"><span style="font-size:10.0pt;font-family:宋体;mso-ascii-font-family:
  &quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">输入键</span><span lang="EN-US" style="font-size:10.0pt">+Alt<u1:p>
        </span><span lang="EN-US"><o:p> 
        </o:p>
        </span></p>
      </td>
      <td width="255" valign="top" style="mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; border-left-style: none; border-left-width: medium; border-right: .5pt solid windowtext; border-top-style: none; border-top-width: medium; border-bottom: .5pt solid windowtext; padding-left: 5.4pt; padding-right: 5.4pt; padding-top: 0cm; padding-bottom: 0cm">
        <p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt">WM_SYSTEMDOWN<span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; 
        </span>WM_SYSTEMUP<u1:p>
        </span><span lang="EN-US"><o:p> 
        </o:p>
        </span></p>
      </td>
      <td width="142" valign="top" style="width:106.55pt;border:none;border-bottom:
  solid windowtext .5pt;mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:
  solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt">
        <p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt">Windows 
        </span><span style="font-size:10.0pt;font-family:宋体;mso-ascii-font-family:&quot;Times New Roman&quot;;
  mso-hansi-font-family:&quot;Times New Roman&quot;">系统处理<u1:p>
        </span><span lang="EN-US"><o:p> 
        </o:p>
        </span></p>
      </td>
    </tr>
    <tr>
      <td width="95" valign="top" style="mso-border-top-alt: solid windowtext .5pt; border-left-style: none; border-left-width: medium; border-right: .5pt solid windowtext; border-top-style: none; border-top-width: medium; border-bottom: .5pt solid windowtext; padding-left: 5.4pt; padding-right: 5.4pt; padding-top: 0cm; padding-bottom: 0cm">
        <p class="MsoNormal"><span style="font-size:10.0pt;font-family:宋体;mso-ascii-font-family:
  &quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">非系统按键消息<u1:p>
        </span><span lang="EN-US"><o:p>
        </o:p>
        </span></p>

⌨️ 快捷键说明

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