ホーム › Web.MsHtml › IHTMLCaret
IHTMLCaret
COMメソッド 12
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT MoveCaretToPointer(IDisplayPointer* pDispPointer, BOOL fScrollIntoView, CARET_DIRECTION eDir)
| pDispPointer | IDisplayPointer* | in | キャレットの移動先位置を表示座標で示す IDisplayPointer へのポインタである。 |
| fScrollIntoView | BOOL | in | 移動先が表示されるようスクロールするかどうかを指定する BOOL である。 |
| eDir | CARET_DIRECTION | in | キャレットの向き(挿入方向)を指定する CARET_DIRECTION である。 |
vtbl 4 HRESULT MoveCaretToPointerEx(IDisplayPointer* pDispPointer, BOOL fVisible, BOOL fScrollIntoView, CARET_DIRECTION eDir)
| pDispPointer | IDisplayPointer* | in | キャレットの移動先位置を表示座標で示す IDisplayPointer へのポインタである。 |
| fVisible | BOOL | in | 移動後にキャレットを表示するかどうかを指定する BOOL である。 |
| fScrollIntoView | BOOL | in | 移動先が表示されるようスクロールするかどうかを指定する BOOL である。 |
| eDir | CARET_DIRECTION | in | キャレットの向き(挿入方向)を指定する CARET_DIRECTION である。 |
vtbl 5 HRESULT MoveMarkupPointerToCaret(IMarkupPointer* pIMarkupPointer)
| pIMarkupPointer | IMarkupPointer* | in | 現在のキャレット位置へ移動させるマークアップポインタを指定する IMarkupPointer へのポインタである。 |
vtbl 6 HRESULT MoveDisplayPointerToCaret(IDisplayPointer* pDispPointer)
| pDispPointer | IDisplayPointer* | in | 現在のキャレット位置へ移動させる表示ポインタを指定する IDisplayPointer へのポインタである。 |
| pIsVisible | BOOL* | out | キャレットが現在表示されているかどうかを受け取る BOOL へのポインタである。 |
| fScrollIntoView | BOOL | in | キャレット表示時にその位置が見えるようスクロールするかどうかを指定する BOOL である。 |
vtbl 9 HRESULT Hide()
| pText | LPWSTR | in | 現在のキャレット位置に挿入するテキスト文字列を指定する。 |
| lLen | INT | in | 挿入する文字数を指定する INT である。-1 を指定すると文字列全体を挿入する。 |
vtbl 11 HRESULT ScrollIntoView()
| pPoint | POINT* | out | キャレットの位置座標を受け取る POINT へのポインタである。 |
| fTranslate | BOOL | in | 座標をグローバル(画面)座標へ変換するかどうかを指定する BOOL である。 |
vtbl 13 HRESULT GetCaretDirection(CARET_DIRECTION* peDir)
| peDir | CARET_DIRECTION* | out | 現在のキャレットの向き(挿入方向)を受け取る CARET_DIRECTION へのポインタである。 |
vtbl 14 HRESULT SetCaretDirection(CARET_DIRECTION eDir)
| eDir | CARET_DIRECTION | in | 設定するキャレットの向き(挿入方向)を指定する CARET_DIRECTION である。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IHTMLCaret "{3050F604-98B5-11CF-BB82-00AA00BDCE0B}" #usecom global IHTMLCaret IID_IHTMLCaret "{}" #comfunc global IHTMLCaret_MoveCaretToPointer 3 sptr,int,int #comfunc global IHTMLCaret_MoveCaretToPointerEx 4 sptr,int,int,int #comfunc global IHTMLCaret_MoveMarkupPointerToCaret 5 sptr #comfunc global IHTMLCaret_MoveDisplayPointerToCaret 6 sptr #comfunc global IHTMLCaret_IsVisible 7 var #comfunc global IHTMLCaret_Show 8 int #comfunc global IHTMLCaret_Hide 9 #comfunc global IHTMLCaret_InsertText 10 wstr,int #comfunc global IHTMLCaret_ScrollIntoView 11 #comfunc global IHTMLCaret_GetLocation 12 var,int #comfunc global IHTMLCaret_GetCaretDirection 13 var #comfunc global IHTMLCaret_SetCaretDirection 14 int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IHTMLCaret "{3050F604-98B5-11CF-BB82-00AA00BDCE0B}" #usecom global IHTMLCaret IID_IHTMLCaret "{}" #comfunc global IHTMLCaret_MoveCaretToPointer 3 sptr,int,int #comfunc global IHTMLCaret_MoveCaretToPointerEx 4 sptr,int,int,int #comfunc global IHTMLCaret_MoveMarkupPointerToCaret 5 sptr #comfunc global IHTMLCaret_MoveDisplayPointerToCaret 6 sptr #comfunc global IHTMLCaret_IsVisible 7 sptr #comfunc global IHTMLCaret_Show 8 int #comfunc global IHTMLCaret_Hide 9 #comfunc global IHTMLCaret_InsertText 10 wstr,int #comfunc global IHTMLCaret_ScrollIntoView 11 #comfunc global IHTMLCaret_GetLocation 12 sptr,int #comfunc global IHTMLCaret_GetCaretDirection 13 sptr #comfunc global IHTMLCaret_SetCaretDirection 14 int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。