HtmlElementEventArgs.OffsetMousePosition プロパティ

定義

イベント発生元要素を基準としたマウス カーソルの相対的な位置を取得または設定します。

public:
 property System::Drawing::Point OffsetMousePosition { System::Drawing::Point get(); };
public System.Drawing.Point OffsetMousePosition { get; }
member this.OffsetMousePosition : System.Drawing.Point
Public ReadOnly Property OffsetMousePosition As Point

プロパティ値

イベント発生元要素を基準としたマウスの相対的な位置。

次の HTML ファイルは、 タグ内の TABLE の相対位置を BODY 示しています。

<HTML>  

<BODY>  

    <TABLE style="position:relative;top:100px;left:100px;">  
        <TR>  
            <TD>Text</TD>  
            <TD>More text</TD>  
        </TR>  
    </TABLE>  

</BODY>  

</HTML>  

次のコード例では、 と OffsetMousePosition ユーザーが の要素をクリックしたときにの違いMousePositionClientMousePositionTABLE表示します。 ClientMousePosition は、ドキュメントのクライアント領域の左上隅を基準にした座標を表示します。 MousePosition では、 の左上隅を基準にした座標が TABLE表示されます。 テキスト行の 1 つをクリックすると、 OffsetMousePosition その要素を基準にした座標が TD 表示されます。

この例では、 でHtmlDocumentイベントのハンドラーとして構成しているDocument_MouseDownMouseDown必要があります。

void Document_Click(object sender, HtmlElementEventArgs e)
{
    HtmlDocument doc = webBrowser1.Document;
    string msg = "ClientMousePosition: " + e.ClientMousePosition.ToString() + "\n" +
        "MousePosition: " + e.MousePosition + "\n" +
        "OffsetMousePosition: " + e.OffsetMousePosition;
    MessageBox.Show(msg);
}
Private Sub HtmlDocument_Click(ByVal sender As Object, ByVal e As HtmlElementEventArgs)
    Dim doc As HtmlDocument = webBrowser1.Document
    Dim msg As String = "ClientMousePosition: " & e.ClientMousePosition.ToString() & vbCrLf & _
        "MousePosition: " & e.MousePosition.ToString() & vbCrLf & _
        "OffsetMousePosition: " & e.OffsetMousePosition.ToString()
    MessageBox.Show(msg)
End Sub

適用対象

こちらもご覧ください