设为首页 加入收藏

TOP

键盘(二)
2010-12-30 21:11:33 】 浏览:47312
Tags:键盘
方块也有键盘介面,但是当对话方块处於活动状态时,应用程式通常不必监视键盘。键盘介面由Windows处理,Windows把关於按键作用的讯息发送给程式。对话方块可以包含用於输入文字的编辑控制项。它们一般是小方框,使用者可以在框中键入字串。Windows处理所有编辑控制项逻辑,并在输入完毕後,将编辑控制项的最终内容传送给程式。关於对话方块的详细资讯,请参见第十一章。

编辑控制项不必局限於单独一行,而且也不限於只在对话方块中。一个在程式主视窗内的多行编辑控制项就能够作为一个简单的文字编辑器了(参见第九、十、十一和十三章的POPPAD程式)。Windows甚至有一个Rich Text文字编辑控制项,允许您编辑和显示格式化的文字(请参见/Platform SDK/User Interface Services/Controls/Rich Edit Controls)。

您将会发现,在开发Windows程式时,可以使用处理键盘和滑鼠输入的子视窗控制项来将较高层的资讯传递回父视窗。只要这样的控制项用得够多,您就不会因处理键盘讯息而烦恼了。

谁获得了焦点
 

与所有的个人电脑硬体一样,键盘必须由在Windows下执行的所有应用程式共用。有些应用程式可能有多个视窗,键盘必须由该应用程式内的所有视窗共用。

回想一下,程式用来从讯息伫列中检索讯息的MSG结构包括hwnd栏位。此栏位指出接收讯息的视窗控制项码。讯息回圈中的DispatchMessage函式向视窗讯息处理程式发送该讯息,此视窗讯息处理程式与需要讯息的视窗相联系。在按下键盘上的键时,只有一个视窗讯息处理程式接收键盘讯息,并且此讯息包括接收讯息的视窗控制项码。

接收特定键盘事件的视窗具有输入焦点。输入焦点的概念与活动视窗的概念很相近。有输入焦点的视窗是活动视窗或活动视窗的衍生视窗(活动视窗的子视窗,或者活动视窗子视窗的子视窗等等)。

通常很容易辨别活动视窗。它通常是顶层视窗-也就是说,它的父视窗代号是NULL。如果活动视窗有标题列,Windows将突出显示标题列。如果活动视窗具有对话方块架(对话方块中很常见的格式)而不是标题列,Windows将突出显示框架。如果活动视窗目前是最小化的,Windows将在工作列中突出显示该项,其显示就像一个按下的按钮。

如果活动视窗有子视窗,那么有输入焦点的视窗既可以是活动视窗也可以是其子

首页 上一页 1 2 3 4 5 6 7 下一页 尾页 2/61/61
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇滑鼠 下一篇图形基础

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目