Win32 API 日本語リファレンス
ホームUI.TabletPC › InkOverlay

InkOverlay

構造体
サイズx64: 0 バイト / x86: 0 バイト

サイズ=各フィールドのバイト数(x64/x86 で異なる場合は x64/x86 と併記)。x64/x86 列=フィールドのバイトオフセット(HSPで dupptr / lpoke / wpoke 等に使用)。

フィールド

(フィールドなし)

公式ドキュメント

インクに対する認識の実行ではなく、インクのサイズ、形状、色、位置に関心があるような注釈シナリオで役立つオブジェクトを表します。

透明なコントロール (WS_EX_TRANSPARENT プロパティが設定された GroupBox など) の背後に InkOverlay コントロールを作成すると、InkOverlay はインクを収集できなくなります。

InkOverlay には次の種類のメンバーがあります。

イベント

InkOverlay クラスには次のイベントがあります。

イベント 説明
CursorButtonDown InkOverlay がカーソル ボタンの押下を検出したときに発生します。
CursorButtonUp InkOverlay がカーソル ボタンが離されたことを検出したときに発生します。
CursorDown カーソルの先端がデジタイザー タブレットの表面に接触したときに発生します。
CursorInRange カーソルがタブレット コンテキストの物理的な検出範囲 (近接範囲) に入ったときに発生します。
CursorOutOfRange カーソルがタブレット コンテキストの物理的な検出範囲 (近接範囲) から外れたときに発生します。
DoubleClick InkOverlay オブジェクトがダブルクリックされたときに発生します。
Gesture アプリケーション固有のジェスチャが認識されたときに発生します。
MouseDown マウス ポインターが InkOverlay オブジェクト上にある状態でマウス ボタンが押されたときに発生します。
MouseMove マウス ポインターが InkOverlay オブジェクト上を移動したときに発生します。
MouseUp マウス ポインターが InkOverlay オブジェクト上にある状態でマウス ボタンが離されたときに発生します。
MouseWheel InkOverlay オブジェクトがフォーカスを持っている状態でマウス ホイールが動いたときに発生します。
NewInAirPackets インエア パケットが検出されたときに発生します。これは、ユーザーがペンをタブレットに近づけてカーソルが InkOverlay オブジェクトのウィンドウ内にある場合、またはユーザーが InkOverlay オブジェクトに関連付けられたウィンドウ内でマウスを動かした場合に発生します。
NewPackets InkOverlay オブジェクトがパケットを受け取ったときに発生します。
Painted InkOverlay オブジェクトが自身の再描画を完了したときに発生します。
Painting InkOverlay オブジェクトが自身を再描画する前に発生します。
SelectionChanged ユーザー インターフェイスの変更、切り取りと貼り付けの操作、または Selection プロパティなどによって、コントロール内のインクの選択範囲が変更されたときに発生します。
SelectionChanging ユーザー インターフェイスの変更、切り取りと貼り付けの操作、または Selection プロパティなどによって、コントロール内のインクの選択範囲が変更されようとしているときに発生します。
SelectionMoved ユーザー インターフェイスの変更、切り取りと貼り付けの操作、または Selection プロパティなどによって、現在の選択範囲の位置が変更されたときに発生します。
SelectionMoving ユーザー インターフェイスの変更、切り取りと貼り付けの操作、または Selection プロパティなどによって、現在の選択範囲の位置が変更されようとしているときに発生します。
SelectionResized ユーザー インターフェイスの変更、切り取りと貼り付けの操作、または Selection プロパティなどによって、現在の選択範囲のサイズが変更されたときに発生します。
SelectionResizing ユーザー インターフェイスの変更、切り取りと貼り付けの操作、または Selection プロパティなどによって、現在の選択範囲のサイズが変更されようとしているときに発生します。
Stroke ユーザーがいずれかのタブレット上で新しいストロークの描画を終えたときに発生します。
StrokesDeleted Ink プロパティからストロークが削除された後に発生します。
StrokesDeleting Ink プロパティからストロークが削除される前に発生します。
SystemGesture システム ジェスチャが認識されたときに発生します。
TabletAdded IInkTablet がシステムに追加されたときに発生します。
TabletRemoved Tablet がシステムから削除されたときに発生します。

インターフェイス

InkOverlay クラスは次のインターフェイスを定義します。

インターフェイス 説明
IInkOverlay このオブジェクトは IInkOverlay COM インターフェイスを実装します。

メソッド

InkOverlay クラスには次のメソッドがあります。

メソッド 説明
Draw InkOverlay オブジェクト内のインクを再描画する四角形を設定します。
GetEventInterest 特定の InkOverlay オブジェクト イベントの現在の状態、つまりそのイベントがリッスンまたは使用されているかどうかを返します。
GetGestureStatus InkOverlay オブジェクトが特定のジェスチャに関心を持っているかどうかを返します。
GetWindowInputRectangle インクが描画されるウィンドウの四角形をピクセル単位で取得します。
HitTestSelection ヒット テスト中に選択範囲のどの部分がヒットしたかを判定します。
SetAllTabletsMode このモードでは、InkOverlay オブジェクトが Tablet PC に接続されている任意のタブレットからインクを収集できます。
SetEventInterest 特定のイベントをリッスンまたは使用するかどうかを設定します。
SetGestureStatus 既知のジェスチャに対する InkOverlay オブジェクトの関心を設定します。
SetSingleTabletIntegratedMode このモードでは、InkOverlay オブジェクトは 1 つのタブレットからのみインクを収集します。他のタブレットからのインクは InkOverlay オブジェクトによって無視されます。
SetWindowInputRectangle 描画されたインクをウィンドウにマップするために使用するウィンドウの四角形をピクセル単位で設定します。

プロパティ

InkOverlay クラスには次のプロパティがあります。

プロパティ アクセスの種類 説明
AttachMode
読み取り/書き込み
InkOverlay オブジェクトを既知のウィンドウの背後と前面のどちらにアタッチするかを指定する値を取得または設定します。
AutoRedraw
読み取り/書き込み
ウィンドウが無効化されたときに InkOverlay がインクを再描画するかどうかを指定する値を取得または設定します。
CollectingInk
読み取り専用
現在 InkOverlay オブジェクト上でインクが描画されているかどうかを指定する値を取得します。
CollectionMode
読み取り/書き込み
ユーザーの書き込み時にインク、ジェスチャ、またはその両方のどれを認識するかを決定する収集モードを取得または設定します。
Cursors
読み取り専用
インク領域で使用できる Cursors コレクションを取得します。
DefaultDrawingAttributes
読み取り/書き込み
インクの描画および表示時に使用される描画属性を指定する、既定の InkDrawingAttributes オブジェクトを取得または設定します。
DesiredPacketDescription
読み取り/書き込み
InkOverlay オブジェクト上に描画されるインクに関連付けられたパケットの、どの要素に関心があるかを取得または設定します。
DynamicRendering
読み取り/書き込み
インクが描画と同時にレンダリングされるかどうかを示す値を取得または設定します。
EditingMode
読み取り/書き込み
InkOverlay がインク モード、削除モード、選択/編集モードのいずれであるかを示す値を取得または設定します。
Enabled
読み取り/書き込み
InkOverlay オブジェクトがペン入力を収集するかどうかを指定する値を取得または設定します。
EraserMode
読み取り/書き込み
インクをストローク単位と点単位のどちらで消去するかを示す値を取得または設定します。
EraserWidth
読み取り/書き込み
消しゴムのペン先の幅を指定する値を取得または設定します。
Handle
読み取り/書き込み
InkOverlay オブジェクトがアタッチされているウィンドウのハンドルを取得または設定します。
Ink
読み取り/書き込み
InkOverlay オブジェクトに関連付けられた InkDisp オブジェクトを取得または設定します。
MarginX
読み取り/書き込み
x 軸方向の余白をピクセル単位で取得または設定します。
MarginY
読み取り/書き込み
y 軸方向の余白をピクセル単位で取得または設定します。
MouseIcon
読み取り/書き込み
現在のカスタム マウス アイコンを取得または設定します。
MousePointer
読み取り/書き込み
マウスがオブジェクトの特定の部分の上にあるときに表示されるマウス ポインターの種類を示す値を取得または設定します。
Renderer
読み取り/書き込み
インクの描画に使用される InkRenderer オブジェクトを取得または設定します。
Selection
読み取り/書き込み
InkOverlay コントロール内で現在選択されている InkStrokes コレクションを取得または設定します。
SupportHighContrastInk
読み取り/書き込み
システムがハイ コントラスト モードのときに、インクを単一の色でレンダリングするかどうかを指定する値を取得または設定します。
SupportHighContrastSelectionUI
読み取り/書き込み
システムがハイ コントラスト モードのときに、すべての選択 UI をハイ コントラストで描画するかどうかを指定する値を取得または設定します。
Tablet
読み取り専用
InkOverlay オブジェクトが現在入力の収集に使用しているタブレット デバイスを取得します。

解説(Remarks)

このオブジェクトは、C++ で CoCreateInstance メソッドを呼び出してインスタンス化できます。

InkOverlay オブジェクトは、メモの作成や簡単な書き込みに適しています。このオブジェクトの主な用途は、インクをインクとして表示することです。

一般に、このオブジェクトの実行時のユーザー インターフェイスは、不透明なインクを伴う透明なウィンドウです。

MouseDownMouseMoveMouseUpMouseWheel の各イベントは、インク空間に関連付けられた HIMETRIC 単位ではなく、ピクセル単位で x 座標と y 座標を返します。これは、これらのイベントがペン非対応アプリケーションのマウス イベントを置き換えるものであり、それらのアプリケーションはピクセルしか理解しないためです。

注意

InkOverlay オブジェクトの AttachMode プロパティを InFront に設定する場合は、フォームが実行されているスレッドで InkOverlay オブジェクトを作成してください。InkOverlay オブジェクトを別のスレッドで作成し、その AttachMode プロパティを InFront に設定すると、アプリケーションが応答しなくなる可能性があります。

メモ

InkOverlay オブジェクトは、UI スレッド以外のスレッドで安全に解放することはできません。

アプリケーションのパフォーマンスを向上させるため、InkOverlay オブジェクトが不要になったら破棄してください。

InkOverlay オブジェクトを CView オブジェクトにアタッチした場合は、次の例のように WM_DESTROY メッセージに応じて InkOverlay オブジェクトを解放してください。

BOOL CRecognitionAlternatesSampleCppView::OnWndMsg(UINT msg, WPARAM wp, PARAM lp, LRESULT *pLR)
{
    if(WM_DESTROY == msg)
        m_spInkOverlay.Release();
    return CView::OnWndMsg(msg, wp, lp, pLR);
}
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp)