IPenInputPanel
COMIDispatch (デュアル)comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。公式ドキュメント
. (IPenInputPanel)
メソッド 25
vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクトが現在インク(手書き)を処理中かどうかを示す値を取得します。
| Busy | VARIANT_BOOL* | out | ペン入力パネルがテキスト挿入などの処理中で取り込み中かどうかを受け取る VARIANT_BOOL へのポインタである。 |
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクトが使用する factoid の名前文字列を取得または設定します。(Get)
| Factoid | LPWSTR* | out | パネルに設定されている現在のファクトイド(入力種別ヒント)を文字列で受け取るポインタである。 |
解説(Remarks)
factoid は、特定のフィールド内のインク(手書き)に対する認識エンジンのコンテキストを提供します。入力フィールドが既知の型である場合に factoid を指定します。たとえば、入力フィールドに日付が含まれる場合は Date factoid を指定します。
factoid とその使用方法の詳細については、Using Context to Improve Accuracy を参照してください。Factoid プロパティに指定できる値の一覧については、Supported Factoids from Version 1 を参照してください。
WordList factoid は、PenInputPanel オブジェクトではサポートされません。
Factoid プロパティの既定値は DEFAULT です。ラテン文字の認識エンジンを使用するロケールでは、すべての factoid を使用できます。東アジア文字の認識エンジンを使用するロケールでは、次の factoid 値が関係します。
- DIGIT: 東アジア用手書きパッドの Num バイアスボタンを意味します。
- ONECAHR: 東アジア用手書きパッドの Alpha バイアスボタンを意味します。
- 共通の factoid (JapaneseCommon、ChineseSimpleCommon、ChineseTraditionalCommon、KoreanCommon、KanjiCommon、HangulCommon) は、東アジア用手書きパッドの Alpha/Num バイアスボタンを意味します。
Factoid プロパティが設定されている場合、その値が認識エンジンに転送されるのは、SetInputScope 関数が併せて呼び出されていない場合のみです。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクトが使用する factoid の名前文字列を取得または設定します。(Put)
| Factoid | LPWSTR | in | 認識対象の入力種別を示すファクトイドを文字列で指定する。 |
解説(Remarks)
factoid は、特定のフィールド内のインク(手書き)に対する認識エンジンのコンテキストを提供します。入力フィールドが既知の型である場合に factoid を指定します。たとえば、入力フィールドに日付が含まれる場合は Date factoid を指定します。
factoid とその使用方法の詳細については、Using Context to Improve Accuracy を参照してください。Factoid プロパティに指定できる値の一覧については、Supported Factoids from Version 1 を参照してください。
WordList factoid は、PenInputPanel オブジェクトではサポートされません。
Factoid プロパティの既定値は DEFAULT です。ラテン文字の認識エンジンを使用するロケールでは、すべての factoid を使用できます。東アジア文字の認識エンジンを使用するロケールでは、次の factoid 値が関係します。
- DIGIT: 東アジア用手書きパッドの Num バイアスボタンを意味します。
- ONECAHR: 東アジア用手書きパッドの Alpha バイアスボタンを意味します。
- 共通の factoid (JapaneseCommon、ChineseSimpleCommon、ChineseTraditionalCommon、KoreanCommon、KanjiCommon、HangulCommon) は、東アジア用手書きパッドの Alpha/Num バイアスボタンを意味します。
Factoid プロパティが設定されている場合、その値が認識エンジンに転送されるのは、SetInputScope 関数が併せて呼び出されていない場合のみです。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクトのアタッチ先オブジェクトのウィンドウハンドルを設定または取得します。(Get)
| AttachedEditWindow | INT* | out | パネルが現在アタッチされている編集ウィンドウのハンドルを受け取るポインタである。 |
解説(Remarks)
オブジェクトのウィンドウハンドルは変更されることがあります。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクトのアタッチ先オブジェクトのウィンドウハンドルを設定または取得します。(Put)
| AttachedEditWindow | INT | in | パネルをアタッチする編集ウィンドウのハンドルを指定する。 |
解説(Remarks)
オブジェクトのウィンドウハンドルは変更されることがあります。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクト内で入力に現在使用されているパネルの種類を取得または設定します。(IPenInputPanel.get_CurrentPanel)
| CurrentPanel | PanelType* | out | 現在表示されているパネルの種類を受け取る PanelType へのポインタである。 |
解説(Remarks)
PenInputPanel オブジェクトが初めてアクティブになる前に CurrentPanel プロパティを設定してパネルを変更すると、PanelChanged イベントが発生します。
パネルウィンドウが別の PenInputPanel オブジェクトのインスタンスに関連付けられている場合、CurrentPanel は Inactive 列挙値を返します。パネルが非アクティブな場合、またはパネルの種類が無効な場合、CurrentPanel プロパティを設定すると例外が発生します。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクト内で入力に現在使用されているパネルの種類を取得または設定します。(IPenInputPanel.put_CurrentPanel)
| CurrentPanel | PanelType | in | 表示するパネルの種類を指定する PanelType 値である。 |
解説(Remarks)
PenInputPanel オブジェクトが初めてアクティブになる前に CurrentPanel プロパティを設定してパネルを変更すると、PanelChanged イベントが発生します。
パネルウィンドウが別の PenInputPanel オブジェクトのインスタンスに関連付けられている場合、CurrentPanel は Inactive 列挙値を返します。パネルが非アクティブな場合、またはパネルの種類が無効な場合、CurrentPanel プロパティを設定すると例外が発生します。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクト内で入力に使用される既定のパネルの種類を取得または設定します。(Get)
| pDefaultPanel | PanelType* | out | 既定で表示されるパネルの種類を受け取る PanelType へのポインタである。 |
解説(Remarks)
このプロパティの値が Default の場合、PenInputPanel オブジェクトは、任意のアプリケーションの任意のペン入力パネルで最後に使用されたパネルの種類を使用します。アクティブなすべてのアプリケーションでペン入力パネルへの以前の参照がすべて破棄されている場合、新しい PenInputPanel オブジェクトは Handwriting パネルの種類を使用します。
PenInputPanel オブジェクトが初めてアクティブになる前に CurrentPanel プロパティを設定してパネルを変更すると、PanelChanged イベントが発生します。
DefaultPanel プロパティを設定すると、その PenInputPanel オブジェクトのインスタンスで既定として表示されるパネルの種類を指定できます。このプロパティの値が Handwriting または Keyboard の場合、パネルが表示されるたびに、それぞれ手書きパネルまたはキーボードパネルの種類が使用されます。
PenInputPanel を別のコントロールにアタッチし直し、新しいコントロールにフォーカスが移動した時点で DefaultPanel プロパティを変更する場合は、正しいパネルが表示されるように、AttachedEditWindow プロパティを設定する前に DefaultPanel プロパティを設定してください。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクト内で入力に使用される既定のパネルの種類を取得または設定します。(Put)
| DefaultPanel | PanelType | in | 既定で表示するパネルの種類を指定する PanelType 値である。 |
解説(Remarks)
このプロパティの値が Default の場合、PenInputPanel オブジェクトは、任意のアプリケーションの任意のペン入力パネルで最後に使用されたパネルの種類を使用します。アクティブなすべてのアプリケーションでペン入力パネルへの以前の参照がすべて破棄されている場合、新しい PenInputPanel オブジェクトは Handwriting パネルの種類を使用します。
PenInputPanel オブジェクトが初めてアクティブになる前に CurrentPanel プロパティを設定してパネルを変更すると、PanelChanged イベントが発生します。
DefaultPanel プロパティを設定すると、その PenInputPanel オブジェクトのインスタンスで既定として表示されるパネルの種類を指定できます。このプロパティの値が Handwriting または Keyboard の場合、パネルが表示されるたびに、それぞれ手書きパネルまたはキーボードパネルの種類が使用されます。
PenInputPanel を別のコントロールにアタッチし直し、新しいコントロールにフォーカスが移動した時点で DefaultPanel プロパティを変更する場合は、正しいパネルが表示されるように、AttachedEditWindow プロパティを設定する前に DefaultPanel プロパティを設定してください。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクトが表示されているかどうかを示す値を取得または設定します。
| Visible | VARIANT_BOOL* | out | パネルが現在表示されているかどうかを受け取る VARIANT_BOOL へのポインタである。 |
解説(Remarks)
Visible プロパティに VARIANT_TRUE を設定できるのは、アタッチされているコントロールがフォーカスを持っている場合のみです。それ以外の場合、このプロパティを設定するとエラーが発生します。
| Visible | VARIANT_BOOL | in | パネルを表示するかどうかを指定する VARIANT_BOOL である。 |
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクトの上端の垂直方向 (y 軸) の位置を、スクリーン座標で取得します。
| Top | INT* | out | パネルの上端位置(画面座標、ピクセル)を受け取るポインタである。 |
解説(Remarks)
PenInputPanel オブジェクトの自動配置動作を明示的にオーバーライドするには、オブジェクトの Left プロパティと Top プロパティを使用して、ペン入力パネルの現在位置を調べます。ペン入力パネルが表示されているべき画面領域に位置している場合は、MoveTo メソッドを使用してペン入力パネルを移動します。
また、PanelMoving イベントの Left パラメーターと Top パラメーターを監視することでも、PenInputPanel オブジェクトの自動配置動作をオーバーライドできます。ペン入力パネルが表示されているべき画面領域に位置している場合は、MoveTo メソッドを使用してペン入力パネルを移動します。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクトの左端の水平方向 (x 軸) の位置を、スクリーン座標で取得します。
| Left | INT* | out | パネルの左端位置(画面座標、ピクセル)を受け取るポインタである。 |
解説(Remarks)
PenInputPanel オブジェクトの自動配置動作を明示的にオーバーライドするには、オブジェクトの Left プロパティと Top プロパティを使用して、ペン入力パネルの現在位置を調べます。ペン入力パネルが表示されているべき画面領域に位置している場合は、MoveTo メソッドを使用してペン入力パネルを移動します。
また、PanelMoving イベントの Left パラメーターと Top パラメーターを監視することでも、PenInputPanel オブジェクトの自動配置動作をオーバーライドできます。ペン入力パネルが表示されているべき画面領域に位置している場合は、MoveTo メソッドを使用してペン入力パネルを移動します。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。ペン入力パネルの幅をクライアント座標で取得します。
| Width | INT* | out | パネルの幅(ピクセル)を受け取るポインタである。 |
解説(Remarks)
PenInputPanel オブジェクトの幅は、その Tablet PC の画面解像度に依存します。96 dpi (dots per inch) での既定値は 570 ピクセルです。120 dpi での既定値は 712 ピクセルです。133 dpi での既定値は 790 ピクセルです。
Microsoft Windows XP Tablet PC Edition 2005 以降、Tablet PC Input Panel は、新しい手書き入力に合わせて自動的にサイズを拡大し、ユーザーが手書き入力を続けられるようにします。Tablet PC Input Panel が拡大しても、Height プロパティと Width プロパティは新しいサイズを反映して更新されません。これらのプロパティは Tablet PC Input Panel の元のサイズを返します。また、Tablet PC Input Panel のホバーターゲットの寸法も返しません。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。ペン入力パネルの高さをクライアント座標で取得します。
| Height | INT* | out | パネルの高さ(ピクセル)を受け取るポインタである。 |
解説(Remarks)
ペン入力パネルの高さは、その Tablet PC の画面解像度に依存します。パネルの高さは 1.25 インチに相当するピクセル数です。96 dpi (dots per inch) での既定値は 157 ピクセルです。120 dpi での既定値は 196 ピクセルです。133 dpi での既定値は 218 ピクセルです。
Microsoft Windows XP Tablet PC Edition 2005 以降、Tablet PC Input Panel は、新しい手書き入力に合わせて自動的にサイズを拡大し、ユーザーが手書き入力を続けられるようにします。Tablet PC Input Panel が拡大しても、Height プロパティと Width プロパティは新しいサイズを反映して更新されません。これらのプロパティは Tablet PC Input Panel の元のサイズを返します。また、Tablet PC Input Panel のホバーターゲットの寸法も返しません。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。ペン入力パネルの最も近い水平方向の端と、アタッチ先コントロールの最も近い水平方向の端との間のオフセットを取得または設定します。(IPenInputPanel.get_VerticalOffset)
| VerticalOffset | INT* | out | アタッチされた編集ウィンドウからのパネルの垂直オフセット(ピクセル)を受け取るポインタである。 |
解説(Remarks)
既定値は、画面解像度の設定に応じた 1/16 インチ相当のピクセル数です。値が 0 (ゼロ) の場合、PenInputPanel オブジェクトはコントロールの下端に直接接して配置されます。値が -1 の場合は、コントロールの 1 ピクセル上に配置されます。
PenInputPanel の新しい位置によってパネルが画面の作業領域の境界外に表示される場合、パネルの端が画面の最も近い端に接するように、パネルは作業領域の中央方向へ移動されます。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。ペン入力パネルの最も近い水平方向の端と、アタッチ先コントロールの最も近い水平方向の端との間のオフセットを取得または設定します。(IPenInputPanel.put_VerticalOffset)
| VerticalOffset | INT | in | アタッチされた編集ウィンドウからのパネルの垂直オフセット(ピクセル)を指定する。 |
解説(Remarks)
既定値は、画面解像度の設定に応じた 1/16 インチ相当のピクセル数です。値が 0 (ゼロ) の場合、PenInputPanel オブジェクトはコントロールの下端に直接接して配置されます。値が -1 の場合は、コントロールの 1 ピクセル上に配置されます。
PenInputPanel の新しい位置によってパネルが画面の作業領域の境界外に表示される場合、パネルの端が画面の最も近い端に接するように、パネルは作業領域の中央方向へ移動されます。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。ペン入力パネルの左端と、アタッチ先コントロールの左端との間のオフセットを取得または設定します。(IPenInputPanel.get_HorizontalOffset)
| HorizontalOffset | INT* | out | アタッチされた編集ウィンドウからのパネルの水平オフセット(ピクセル)を受け取るポインタである。 |
解説(Remarks)
既定値は、画面解像度の設定に応じた 0.25 インチ相当のピクセル数です。負の値はコントロールより左へのシフトを示します。正の値は右へのシフトを示します。ゼロの値は、ペン入力パネルの左端がコントロールの左端とちょうど同じ位置に配置されることを示します。
新しい位置によってパネルが画面の作業領域の境界外に表示される場合、パネルの端が画面の最も近い端に接するように、パネルは作業領域の中央方向へ移動されます。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。ペン入力パネルの左端と、アタッチ先コントロールの左端との間のオフセットを取得または設定します。(IPenInputPanel.put_HorizontalOffset)
| HorizontalOffset | INT | in | アタッチされた編集ウィンドウからのパネルの水平オフセット(ピクセル)を指定する。 |
解説(Remarks)
既定値は、画面解像度の設定に応じた 0.25 インチ相当のピクセル数です。負の値はコントロールより左へのシフトを示します。正の値は右へのシフトを示します。ゼロの値は、ペン入力パネルの左端がコントロールの左端とちょうど同じ位置に配置されることを示します。
新しい位置によってパネルが画面の作業領域の境界外に表示される場合、パネルの端が画面の最も近い端に接するように、パネルは作業領域の中央方向へ移動されます。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。ペンを使用してアタッチ先コントロールにフォーカスが設定されたときに、ペン入力パネルを表示するかどうかを示す値を取得または設定します。(IPenInputPanel.get_AutoShow)
| pAutoShow | VARIANT_BOOL* | out | 編集コントロールにフォーカスが移った際にパネルを自動表示するかどうかを受け取る VARIANT_BOOL へのポインタである。 |
解説(Remarks)
AutoShow プロパティが VARIANT_FALSE に設定されている場合、Visible プロパティが VARIANT_TRUE に設定されるまで、Tablet PC Input Panel は表示されません。この時点では Tablet PC Input Panel は表示されますが、ホバーターゲットは表示されません。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。ペンを使用してアタッチ先コントロールにフォーカスが設定されたときに、ペン入力パネルを表示するかどうかを示す値を取得または設定します。(IPenInputPanel.put_AutoShow)
| AutoShow | VARIANT_BOOL | in | 編集コントロールにフォーカスが移った際にパネルを自動表示するかどうかを指定する VARIANT_BOOL である。 |
解説(Remarks)
AutoShow プロパティが VARIANT_FALSE に設定されている場合、Visible プロパティが VARIANT_TRUE に設定されるまで、Tablet PC Input Panel は表示されません。この時点では Tablet PC Input Panel は表示されますが、ホバーターゲットは表示されません。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。PenInputPanel オブジェクトの位置を、画面上の固定位置に設定します。
| Left | INT | in | 新しい水平方向の位置 (スクリーン座標)。 |
| Top | INT | in | 新しい垂直方向の位置 (スクリーン座標)。 |
戻り値
このメソッドは次のいずれかの値を返します。
| 戻り値 | 説明 |
|---|---|
| 成功しました。 | |
| パラメーターまたはプロパティの型が予期しないものです。 | |
| 不特定のエラーが発生しました。 |
解説(Remarks)
PenInputPanel のアタッチ先コントロールがフォーカスを持っていない場合、MoveTo メソッドはエラーになります。アタッチ先コントロールがフォーカスを持っていれば、ペン入力パネルが表示されていない状態でもこのメソッドを安全に呼び出せます。
新しい位置によってパネルが画面の作業領域の境界外に表示される場合、パネルの端が画面の最も近い端に接するように、パネルは作業領域の中央方向へ移動されます。
PenInputPanel オブジェクトの自動配置動作を明示的にオーバーライドするには、PenInputPanel オブジェクトの Left プロパティと Top プロパティを使用して現在位置を調べます。PenInputPanel が表示されているべき画面領域に位置している場合は、MoveTo メソッドを使用して PenInputPanel を移動します。
また、PanelMoving イベントハンドラーに渡される Left パラメーターと Top パラメーターを監視することでも、PenInputPanel オブジェクトの自動配置動作をオーバーライドできます。PenInputPanel が表示されているべき画面領域に位置している場合は、MoveTo メソッドを使用して PenInputPanel を移動します。
非推奨。PenInputPanel は Text Input Panel (TIP) に置き換えられました。収集したインク(手書き)を認識エンジンに送信し、認識結果をポストします。
戻り値
このメソッドは次のいずれかの値を返します。
| 戻り値 | 説明 |
|---|---|
| 成功しました。 | |
| パラメーターまたはプロパティの型が予期しないものです。 | |
| 不特定のエラーが発生しました。 |
解説(Remarks)
手書きパッドは、収集したインク(手書き)を認識エンジンに送信し、手書きパッドをクリアします。東アジア用のマルチボックスは、認識された文字を送信してマルチボックスをクリアします。認識結果は、PenInputPanel オブジェクトのアタッチ先コントロールに送信されます。
保留中の入力がない場合、または CurrentPanel プロパティが Keyboard の場合、CommitPendingInput は何も行いません。PenInputPanel オブジェクトが非アクティブな場合、このメソッドを呼び出すとエラーが発生します。
Microsoft Windows XP Tablet PC Edition 2005 以降では、ユーザーの入力に合わせてインク(手書き)が認識されます。そのため、CommitPendingInput 関数は、すでに認識済みのテキストを編集コントロールに送信するだけであり、認識の実行を強制するものではありません。
Windows XP Tablet PC Edition 2005 以降では、PenInputPanel オブジェクトが非アクティブな場合でも、CommitPendingInput はエラーを発生させず、単に処理を返します。
Refresh は Windows XP Tablet PC Edition 以降、使用できなくなりました。
戻り値
このメソッドは次のいずれかの値を返します。
| 戻り値 | 説明 |
|---|---|
| 成功しました。 | |
| パラメーターまたはプロパティの型が予期しないものです。 | |
| 不特定のエラーが発生しました。 |
解説(Remarks)
Refresh メソッドは既定のパネルを復元します。たとえば、DefaultPanel プロパティが Keyboard に設定され、CurrentPanel プロパティが Handwriting に設定されている場合、Refresh メソッドはペン入力パネルを Keyboard に設定します。DefaultPanel プロパティが Default に設定されている場合、Refresh メソッドはペン入力パネルを変更しません。
Refresh メソッドは、アタッチ先コントロールを基準にしてペン入力パネルを自動的に配置します。
Refresh メソッドは、Input Panel の設定を使用してペン入力パネルを更新します。たとえば、PenInputPanel オブジェクトに変更を加えた後で Refresh を呼び出すと、Input Panel からコピーされた設定に戻すことができます。
PenInputPanel オブジェクトは、Input Panel の設定が変更されるたびに自動的に更新されます。
ペン入力パネルがフォーカスを持っていない状態で Refresh を呼び出すと、エラーが発生します。
非推奨。PenInputPanel オブジェクトが Text Services Framework (TSF) を通じてアタッチ先コントロールにテキストを送信しようとするかどうかを示すブール値を取得または設定し、修正ユーザーインターフェイスの使用を有効にします。
| Enable | VARIANT_BOOL | in | PenInputPanel オブジェクトが TSF を使用してアタッチ先コントロールへのテキスト送信を試み、修正ユーザーインターフェイスを有効にする場合は TRUE。それ以外の場合は FALSE。既定値は TRUE です。 |
戻り値
このメソッドは次のいずれかの値を返します。
| 戻り値 | 説明 |
|---|---|
| 成功しました。 | |
| パラメーターまたはプロパティの型が予期しないものです。 | |
| アタッチ先コントロールで TSF インターフェイスが公開されていません。 | |
| 不特定のエラーが発生しました。 |
解説(Remarks)
Enable に TRUE を指定してこのメソッドを呼び出すと、PenInputPanel オブジェクトは、アタッチ先コントロールで TSF の開始を試みます。
EnableTsf は、手書き認識の結果をコントロールに送信する際に、SendInput 関数ではなく TSF の挿入コンテキストを PenInputPanel が使用できるようにするために使用します。これにより、フィールドがフォーカスを失った後でもテキストを挿入できるようになります。
EnableTsf を TRUE の値で呼び出すと、PenInputPanel オブジェクトはアタッチ先コントロールに EM_SETEDITSTYLE メッセージを送信します。コントロールがこのメッセージをサポートしていない場合、結果は予測できないものになる可能性があります。InkEdit コントロールは TSF をサポートしています。
従来のアプリケーションのサポート
デスクトップ上のすべてのアプリケーションに一貫したユーザーインターフェイスを提供するため、TSF と Microsoft Windows にサポートが追加されました。この新しいサポートにより、TSF を認識しない従来のアプリケーションやコントロールでも、一部の高度なテキストサービスを追加の実装なしで利用できます。たとえば、音声ディクテーションや手書き入力を使用して、任意のアプリケーションのドキュメントにテキストを入力できるようになります。この新機能は Windows XP Tablet PC Edition で利用可能であり、既定で有効になっています。有効または無効にするには、次の手順を実行します。
- コントロール パネルで Regional and Language Options をクリックします。
- Languages タブで Details をクリックします。
- Text Services and Input Languages ダイアログ ボックスの Advanced タブで、Extend support of advanced text services to all programs をオンまたはオフにします。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IPenInputPanel "{FA7A4083-5747-4040-A182-0B0E9FD4FAC7}" #usecom global IPenInputPanel IID_IPenInputPanel "{F744E496-1B5A-489E-81DC-FBD7AC6298A8}" #comfunc global IPenInputPanel_get_Busy 7 var #comfunc global IPenInputPanel_get_Factoid 8 var #comfunc global IPenInputPanel_put_Factoid 9 wstr #comfunc global IPenInputPanel_get_AttachedEditWindow 10 var #comfunc global IPenInputPanel_put_AttachedEditWindow 11 int #comfunc global IPenInputPanel_get_CurrentPanel 12 var #comfunc global IPenInputPanel_put_CurrentPanel 13 int #comfunc global IPenInputPanel_get_DefaultPanel 14 var #comfunc global IPenInputPanel_put_DefaultPanel 15 int #comfunc global IPenInputPanel_get_Visible 16 var #comfunc global IPenInputPanel_put_Visible 17 int #comfunc global IPenInputPanel_get_Top 18 var #comfunc global IPenInputPanel_get_Left 19 var #comfunc global IPenInputPanel_get_Width 20 var #comfunc global IPenInputPanel_get_Height 21 var #comfunc global IPenInputPanel_get_VerticalOffset 22 var #comfunc global IPenInputPanel_put_VerticalOffset 23 int #comfunc global IPenInputPanel_get_HorizontalOffset 24 var #comfunc global IPenInputPanel_put_HorizontalOffset 25 int #comfunc global IPenInputPanel_get_AutoShow 26 var #comfunc global IPenInputPanel_put_AutoShow 27 int #comfunc global IPenInputPanel_MoveTo 28 int,int #comfunc global IPenInputPanel_CommitPendingInput 29 #comfunc global IPenInputPanel_Refresh 30 #comfunc global IPenInputPanel_EnableTsf 31 int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。#define global IID_IPenInputPanel "{FA7A4083-5747-4040-A182-0B0E9FD4FAC7}" #usecom global IPenInputPanel IID_IPenInputPanel "{F744E496-1B5A-489E-81DC-FBD7AC6298A8}" #comfunc global IPenInputPanel_get_Busy 7 sptr #comfunc global IPenInputPanel_get_Factoid 8 sptr #comfunc global IPenInputPanel_put_Factoid 9 wstr #comfunc global IPenInputPanel_get_AttachedEditWindow 10 sptr #comfunc global IPenInputPanel_put_AttachedEditWindow 11 int #comfunc global IPenInputPanel_get_CurrentPanel 12 sptr #comfunc global IPenInputPanel_put_CurrentPanel 13 int #comfunc global IPenInputPanel_get_DefaultPanel 14 sptr #comfunc global IPenInputPanel_put_DefaultPanel 15 int #comfunc global IPenInputPanel_get_Visible 16 sptr #comfunc global IPenInputPanel_put_Visible 17 int #comfunc global IPenInputPanel_get_Top 18 sptr #comfunc global IPenInputPanel_get_Left 19 sptr #comfunc global IPenInputPanel_get_Width 20 sptr #comfunc global IPenInputPanel_get_Height 21 sptr #comfunc global IPenInputPanel_get_VerticalOffset 22 sptr #comfunc global IPenInputPanel_put_VerticalOffset 23 int #comfunc global IPenInputPanel_get_HorizontalOffset 24 sptr #comfunc global IPenInputPanel_put_HorizontalOffset 25 int #comfunc global IPenInputPanel_get_AutoShow 26 sptr #comfunc global IPenInputPanel_put_AutoShow 27 int #comfunc global IPenInputPanel_MoveTo 28 int,int #comfunc global IPenInputPanel_CommitPendingInput 29 #comfunc global IPenInputPanel_Refresh 30 #comfunc global IPenInputPanel_EnableTsf 31 int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。