关于输入面板

[PenInputPanel 已替换为 TextInput。 有关详细信息,请参阅 对文本输入面板进行编程。]

从 Microsoft Windows XP Tablet PC Edition 软件开发工具包 (SDK) 版本 1.0 开始,系统级平板电脑输入面板提供了一种通用机制,用于跨 Windows 平台完成文本输入,尽管它不提供编程访问。 Tablet PC SDK 版本 1.5 PenInputPanel 对象将文本输入工具集成到应用程序中。

下图显示了 自动声明表单示例 上显示的笔输入面板。

自动声明表单示例上显示的笔输入面板

PenInputPanel 对象方便应用程序开发人员使用。 无需替换现有窗体上的控件。 只需将 PenInputPanel 对象附加到接收文本输入的现有控件,它们就可以开始从 PenInputPanel 对象接收输入。

PenInputPanel 对象采用输入面板中的以下属性的设置:

  • Layout
  • 墨迹粗细
  • 识别超时
  • 框大小、发送模式和其他特定于东亚装箱输入的设置

PenInputPanel 对象不提供对基础墨迹的访问权限。 若要获取墨迹,请使用 InkPicture 控件。

PenInputPanel 对象提供了一个就地用户界面 (UI) ,应用程序的最终用户可以轻松发现该用户界面。 当用户使用平板电脑笔点击具有 PenInputPanel 对象的窗口时,它会自动激活。 当系统检测到 PenInputPanel 对象附加到的窗口的 CursorButtonUp 事件时,会自动显示笔输入面板。 可以通过将 AutoShow 属性设置为 FALSE 来禁用自动激活。

触控笔输入面板不会在鼠标事件上自动显示。 使用终端服务时,笔事件将转换为鼠标事件。 PenInputPanel 对象不通过终端服务连接工作。

笔输入面板输入模式

PenInputPanel 对象允许键盘功能或手写输入,并附加键盘辅助输入。 笔输入面板的 UI 包括:

  • 书写板
  • 东亚语言的写作板
  • QuickKeys 键盘
  • 就地键盘

书写板与东亚语言书写板的可用性取决于操作系统中用户的默认区域设置。

书写板

书写板类似于熟悉的输入面板 UI。

书写板收集最终用户的手写。 基本 UI 包括一个书写行,用户可以在其中使用数字笔书写文本。 当用户完成写入并点击“发送”按钮或等待超时发生时,手写将发送到识别器。

墨迹在自上次墨迹笔划收集以来经过指定时间量后被识别。 发生超时时,将从集合图面中删除墨迹并进行识别。 然后将识别的文本插入到 PenInputPanel 对象所附加到的控件中。

东亚多框板

东亚版本的笔输入面板显示用于输入亚洲字符的多框界面。 它提供替代项,类似于输入面板 UI。 用户可以通过点击书写框并从笔输入面板顶部栏中的备用字符列表中选择正确的字符来纠正错误识别的字符。 筛选器按钮可用于将识别替换列表缩小到指定类型的字符(如符号)。

除了所有语言外观通用的迷你快速键外,朝鲜语和日语版本的书写板还有一个转换键。

若要在东亚语言的书写板中获取拉丁语字符,请设置 Factoid 属性以提高拉丁语字符识别的准确性。 为数字字符设置 Factoid 对象的 Digit 成员,或为字母和数字字符设置 Factoid 对象的 OneChar 成员。

QuickKeys 键盘

笔输入面板提供两个小键盘,用于输入符号和数字。

就地键盘

笔输入面板为手写识别不足的情况提供键盘模式。 例如,在输入密码或部件号时,用户使用笔输入面板键盘可能比使用书写板更成功。 这是因为密码或部件号不太可能出现在书写板的识别器字典中。

识别器支持

PenInputPanel 对象支持 Windows XP 平板电脑版 1.0 版和平板电脑 SDK 版本 1.5 的发货识别器。

自动定位

默认情况下,笔输入面板相对于它所附加到的控件自动定位。 除非笔输入面板和控件没有足够的屏幕空间,或者开发人员显式设置笔输入面板的位置,否则它不会与控件重叠。

仅当开发人员未使用 MoveTo 方法显式设置位置时,自动定位才发挥作用。 若要替代自动定位,请在 PanelMoving 事件处理程序中更改 TopLeft 属性的值。

笔输入面板的位置受屏幕边缘的约束。 笔输入面板的任何边缘都不能比屏幕的任何边框更近 0.25 英寸。

默认情况下,笔输入面板的顶部显示在它所附加到的控件的底部,并用 VerticalOffset 属性的值与控件隔开。 如果控件下方没有足够的空间,则笔输入面板的底部将显示在它所附加到的控件的顶部,并用 VerticalOffset 属性的值与控件隔开。 如果仍然没有足够的空间(如全屏编辑控件的情况),则笔输入面板会与控件重叠。

左边缘笔输入面板显示在它所附加到的控件的左边缘,并且由 HorizontalOffset 属性的值与控件隔开,但屏幕绑定除外。 如果所需位置将笔输入面板置于可用屏幕边界之外,则笔输入面板将采用最接近的可能水平位置。

强制重叠

有时,笔输入面板需要与附加的控件重叠,例如全屏编辑控件。 在这种情况下,使用下列规则确定笔输入面板的自动定位:

  • 当插入点位于附加控件的上半部分时,笔输入面板的垂直位置位于屏幕底部,可能将其放置在控件的下半部分。
  • 当插入点位于附加控件的下半部分时,笔输入面板的垂直位置位于屏幕顶部,可能将其放置在控件的上半部分。

无窗口控件

如果 PenInputPanel 对象附加到无窗口控件,则笔输入面板相对于无窗口控件的父控件进行定位。 在 PanelMoving 事件处理程序中设置 TopLeft 属性,或使用 MoveTo 方法手动定位笔输入面板。