InkPicture 控件参考

InkPicture 控件使用户能够将图像放置在应用程序中,并使用户能够在其上添加墨迹。 它适用于墨迹未识别为文本,而是存储为墨迹的情况。

可以通过在 C++ 中调用 CoCreateInstance 方法实例化 InkPicture 控件。

注意

InkPicture 控件未标记为可安全编写脚本。 不应在 HTML 或 ASP.NET 页中使用 InkPicture 控件。

在透明控件 ((如 GroupBox)后面创建 InkPicture 控件,) 设置 WS_EX_TRANSPARENT 属性将阻止 InkPicture 收集墨迹。

成员

枚举 描述
InkPictureSizeMode 定义指定背景图片在 InkPicture 控件内的行为方式的值。
事件 说明
ChangeUICues 已弃用。
点击 当用户单击 InkPicture 控件时发生。
CursorButtonDown 事件 当 InkCollector 控件检测到 IInkCursorButton 对象已关闭时发生。
CursorButtonUp 事件 当 InkPicture 控件检测到已启动的 IInkCursorButton 时发生。
CursorDown 事件 当光标笔尖接触数字化平板电脑表面时发生。
CursorInRange 事件 当光标进入平板电脑上下文的物理检测范围 (邻近感应) 时发生。
CursorOutOfRange 事件 当光标离开物理检测范围 (平板电脑上下文的邻近感应) 时发生。
DblClick 双击 InkPicture 控件时发生。
此事件方法在 _IInkPictureEvents 接口中定义。 _IInkPictureEvents 接口实现标识符为 DISPID_IPEDblClick 的 IDispatch 接口。
手势事件 在识别应用程序手势时发生。
KeyDown 事件 [InkPicture 控件] 当 InkPicture 控件具有焦点时,按下键并处于向下位置时发生。
KeyPress 事件[InkPicture 控件] 当 InkPicture 控件具有焦点时按下某个键时发生。
KeyUp 事件 [InkPicture 控件] 在 InkPicture 控件具有焦点时释放键时发生。
MouseDown 事件 [InkPicture 控件] 当鼠标指针位于 InkPicture 控件上并按下鼠标按钮时发生。
MouseEnter 当鼠标指针进入 InkPicture 控件时发生。
MouseHover 当鼠标指针悬停在 InkPicture 控件上时发生。
MouseLeave 当鼠标指针离开 InkPicture 控件时发生。
MouseMove 事件 [InkPicture 控件] 当鼠标指针移到 InkPicture 控件上时发生。
MouseUp 事件 [InkPicture 控件] 当鼠标指针位于 InkPicture 控件上并且松开鼠标按钮时发生。
MouseWheel 当 InkPicture 控件具有焦点时鼠标滚轮移动时发生。
NewInAirPackets 事件 在看到无线数据包时发生。
NewPackets 事件 当 InkPicture 控件收到数据包时发生。
当 InkPicture 控件完成自身重绘时发生。
绘制 在 InkPicture 控件重绘自身之前发生。
Resize 在调整 InkPicture 控件的大小时发生。
SelectionChanged 当 InkPicture 控件中的文本选择发生更改时发生,例如通过更改用户界面、剪切和粘贴过程或 Selection 属性。
选择更改 当 InkPicture 控件中的文本选择即将更改时发生,例如通过更改用户界面、剪切和粘贴过程或 Selection 属性。
SelectionMoved 当当前所选内容的位置发生更改时发生,例如通过更改用户界面、剪切和粘贴过程或 Selection 属性。
SelectionMoving 事件 [InkPicture 控件] 当当前选定内容的位置即将更改时发生,例如通过更改用户界面、剪切和粘贴过程或 Selection 属性。
SelectionResized 当当前选定内容的大小发生更改时发生,例如通过更改用户界面、剪切和粘贴过程或 Selection 属性。
SelectionResizing 当当前所选内容的大小即将更改时发生,例如通过更改用户界面、剪切和粘贴过程或 Selection 属性。
SizeChanged 在 InkPicture 控件调整大小之后发生,特别是在 WidthHeight 属性值更改之后。
SizeModeChanged 在 InkPicture 控件的 SizeMode 属性更改后发生。
StyleChanged 未实现。
中风 当用户在任何平板电脑上绘制新笔划时发生。
StrokesDeleted Ink 属性中删除 IInkStrokeDisp 对象后发生。
StrokesDeleting 在从 Ink 属性中删除 IInkStrokeDisp 对象之前发生。
SystemColorsChanged 在系统颜色更改后发生。
SystemGesture 在识别系统手势时发生。
TabletAdded 事件 将平板电脑添加到系统时发生。
TabletRemoved 事件 从系统中删除平板电脑时发生。
方法 说明
GetEventInterest 方法 返回一个值,该值指示 InkPicture 控件是否对特定事件感兴趣。
GetGestureStatus 返回一个值,该值指示 InkPicture 控件是否对特定应用程序手势感兴趣。
GetWindowInputRectangle 方法 返回在其中绘制墨迹的窗口矩形(以像素为单位)。
HitTestSelection 返回 SelectionHitResult 枚举的成员,该枚举指定在命中测试期间命中所选内容(如果有)的哪一部分。
SetAllTabletsMode 方法 使 InkPicture 控件能够从连接到平板电脑的任何平板电脑收集墨迹。
SetEventInterest 方法 设置一个值,该值指示 InkPicture 控件是否对指定事件感兴趣。
SetFocus 将焦点移动到 InkPicture 控件。
SetGestureStatus 方法 在指定的应用程序手势中设置 InkPicture 对象的兴趣。
SetSingleTabletIntegratedMode 方法 设置 InkPicture 控件以仅从连接到平板电脑的一台平板电脑收集墨迹。 忽略其他平板电脑中的墨迹。
SetWindowInputRectangle 方法 指定要在窗口坐标中设置的窗口矩形,在其中绘制墨迹。
ShowWhatsThis 使用 32 位 Microsoft Windows 操作系统中的帮助提供的“内容”弹出窗口在帮助文件中显示所选主题, (设计时仅) 。
ZOrder 将控件放在 z 顺序的前面或后面,仅) (设计时图形级别。
属性 说明
AutoRedraw 属性 获取或设置一个值,该值指定当窗口失效时,InkPicture 控件是否重新绘制, (当与 InkPicture 关联的窗口收到) WM_PAINT消息时,是否自动重新绘制当前与 InkPicture 控件关联的 InkDisp 对象。
BackColor 获取或设置 InkPicture 控件的背景色。 默认背景色是系统窗口背景色,通常为白色。
CollectingInk 属性 获取值,该值指定 InkPicture 控件是否仅在) (运行时收集墨迹。
CollectionMode 获取或设置集合模式,该模式确定是否在用户写入时识别墨迹、手势或笔势。
Cursors 属性 获取可在 InkPicture 控件的墨迹区域中使用的 IInkCursors 集合。
CustomStrokes 获取 IInkCustomStrokes 集合,该集合仅在设计时 (墨迹中保留) 。
DefaultDrawingAttributes 属性 获取或设置在仅) (运行时绘制和显示墨迹时使用的默认 InkDrawingAttributes 集合。
DesiredPacketDescription 属性 获取或设置仅) 运行时 (InkPicture 控件的数据包说明。
DynamicRendering 属性 获取或设置值,该值指定 InkPicture 控件是否在收集墨迹时动态呈现墨迹。
EditingMode 获取或设置一个值,该值指定 InkPicture 控件是处于墨迹模式、删除模式还是选择/编辑模式。
已启用 获取或设置一个值,该值确定 InkPicture 控件是否可以响应用户生成的事件。
注意: 此属性等效于 InkEnabled 属性。
EraserMode 获取或设置值,该值指定是按笔划还是按点擦除墨迹。
EraserWidth 获取或设置值,该值指定橡皮擦笔尖的宽度。
hWnd 获取 InkPicture 控件绑定到的窗口句柄。 仅) (运行时间
墨迹 获取或设置与 InkPicture 控件关联的 InkDisp 对象, (仅) 运行时。
InkEnabled 获取或设置一个值,该值指定 InkPicture 控件是否收集笔输入 (无线数据包、范围事件中的光标等) 。
MarginX 属性 获取或设置屏幕坐标中窗口矩形周围的 x 轴边距。
MarginY 属性 获取或设置屏幕坐标中窗口矩形周围的 y 轴边距。
MouseIcon 属性 获取或设置当前自定义鼠标图标。
MousePointer 属性 获取或设置一个值,该值指示当鼠标位于 InkPicture 控件的特定部分时出现的鼠标指针的类型。
图片 获取要显示在 InkPicture 控件上的图形文件。
Renderer 属性 获取或设置 InkRenderer 对象,该对象用于在仅) 运行时 (InkPicture 控件上绘制墨迹。
选择 获取当前在 InkPicture 控件中选择的 InkStrokes 集合, (仅) 运行时。
SizeMode 获取或设置控件如何处理图像放置和大小调整。
SupportHighContrastInk 属性 获取一个值,该值指定当系统处于高对比度模式时,墨迹是否仅呈现为一种颜色、Color = COLOR_WINDOWTEXT (GetSystemMetrics 调用) 。
SupportHighContrastSelectionUI 获取或设置一个值,该值指定当系统处于高对比度模式时,是否以高对比度绘制所有选择用户界面) (选择边界框和选择句柄。
Tablet 属性 获取 InkPicture 控件当前用于收集输入的 IInkTablet 对象。

注解

InkPicture 控件的运行时用户界面是一个窗口,其背景不透明 (单一颜色、图片背景或同时包含不透明墨迹的) 。

可以使用 InkPicture 控件在 Microsoft Windows 2000、Windows Server 2003、除 Windows XP 平板电脑版以外的任何 Windows XP 版本以及任何版本的 Windows Vista 中呈现墨迹。 但是,只能在以下条件下输入墨迹、接受手势或识别手写:

  • 如果安装了 Windows Vista 或 XP Tablet PC Edition 2005,则可以输入并识别墨迹。
  • 手势也可以识别。
  • 如果手写源自运行较旧版本的 Windows 的计算机上,只要存在识别器,手写就可以识别为文本。

如果使用 Windows 2000、Windows Server 2003、Windows XP 平板电脑版本 2005 以外的任何 Windows XP 版本,则可以将值分配给 InkPicture 控件的环境属性,然后将墨迹复制并粘贴到其他应用程序。 但是,其 InkEnabled 属性的值将始终为 FALSE

持久 化 InkDisp 对象可以在所有版本的 Windows Vista 和 XP 以及仅安装了 Windows XP Tablet PC Edition 软件开发工具包 (SDK) 的系统上加载和显示。 如果安装了 Windows Vista 或 Windows XP Tablet PC Edition 2005,则 InkDisp 对象只能转换为 (识别) 的文本。

如果对此控件的操作不成功,则返回合法的 HRESULT。 如果出现错误条件,检查返回的 HRESULT 来对抗错误。

有关墨迹控件的详细信息,请参阅 Ink

有关哪些线程引发特定事件的信息,请参阅 有关哪些事件可以触发的线程

若要提高应用程序的性能,请在不再需要 InkPicture 控件时手动释放它。

注意

当 InkPicture 控件与另一个控件(例如 GroupBox 设置为透明)重叠时,InkPicture 将不会收集墨迹。 InkPicture 必须是 Z 顺序中最顶层的控件,或者必须是 GroupBox 的子级。

COM 实现

此对象实现 IInkPicture COM 接口。

InkEdit 控件参考

InkOverlay 类