Win32 API 日本語リファレンス
ホームWeb.MsHtml › IDisplayServices

IDisplayServices

COM
IID3050f69d-98b5-11cf-bb82-00aa00bdce0b継承元IUnknown自前メソッド開始 vtbl3

メソッド 7

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT CreateDisplayPointer(IDisplayPointer** ppDispPointer)
ppDispPointerIDisplayPointer**out新しく作成した表示ポインタを受け取る IDisplayPointer へのポインタである。不要になったら Release する。
vtbl 4 HRESULT TransformRect(RECT* pRect, COORD_SYSTEM eSource, COORD_SYSTEM eDestination, IHTMLElement* pIElement)
pRectRECT*inout変換対象の矩形を指定し、変換後の矩形を受け取る RECT へのポインタである。
eSourceCOORD_SYSTEMin変換元の座標系を指定する COORD_SYSTEM である。
eDestinationCOORD_SYSTEMin変換先の座標系を指定する COORD_SYSTEM である。
pIElementIHTMLElement*in座標変換の基準とする要素を指定する IHTMLElement へのポインタである。NULL を指定できる。
vtbl 5 HRESULT TransformPoint(POINT* pPoint, COORD_SYSTEM eSource, COORD_SYSTEM eDestination, IHTMLElement* pIElement)
pPointPOINT*inout変換対象の点を指定し、変換後の点を受け取る POINT へのポインタである。
eSourceCOORD_SYSTEMin変換元の座標系を指定する COORD_SYSTEM である。
eDestinationCOORD_SYSTEMin変換先の座標系を指定する COORD_SYSTEM である。
pIElementIHTMLElement*in座標変換の基準とする要素を指定する IHTMLElement へのポインタである。NULL を指定できる。
vtbl 6 HRESULT GetCaret(IHTMLCaret** ppCaret)
ppCaretIHTMLCaret**outドキュメントのキャレットを操作するための IHTMLCaret を受け取るポインタである。不要になったら Release する。
vtbl 7 HRESULT GetComputedStyle(IMarkupPointer* pPointer, IHTMLComputedStyle** ppComputedStyle)
pPointerIMarkupPointer*in計算済みスタイルを取得する位置を示すマークアップポインタを指定する IMarkupPointer へのポインタである。
ppComputedStyleIHTMLComputedStyle**out指定位置の計算済みスタイルを受け取る IHTMLComputedStyle へのポインタである。不要になったら Release する。
vtbl 8 HRESULT ScrollRectIntoView(IHTMLElement* pIElement, RECT rect)
pIElementIHTMLElement*inスクロールの基準とする要素を指定する IHTMLElement へのポインタである。
rectRECTin表示領域内にスクロールして収める矩形を指定する RECT である。
vtbl 9 HRESULT HasFlowLayout(IHTMLElement* pIElement, BOOL* pfHasFlowLayout)
pIElementIHTMLElement*in判定対象の要素を指定する IHTMLElement へのポインタである。
pfHasFlowLayoutBOOL*out指定要素がフローレイアウトを持つかどうかを受け取る BOOL へのポインタである。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IDisplayServices "{3050F69D-98B5-11CF-BB82-00AA00BDCE0B}"
#usecom global IDisplayServices IID_IDisplayServices "{}"
#comfunc global IDisplayServices_CreateDisplayPointer  3 sptr
#comfunc global IDisplayServices_TransformRect         4 var,int,int,sptr
#comfunc global IDisplayServices_TransformPoint        5 var,int,int,sptr
#comfunc global IDisplayServices_GetCaret              6 sptr
#comfunc global IDisplayServices_GetComputedStyle      7 sptr,sptr
#comfunc global IDisplayServices_ScrollRectIntoView    8 sptr,int
#comfunc global IDisplayServices_HasFlowLayout         9 sptr,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。