HtmlElementEventArgs.MousePosition プロパティ

定義

相対的に配置された親要素に対するマウス カーソルの位置を取得または設定します。

public:
 property System::Drawing::Point MousePosition { System::Drawing::Point get(); };
public System.Drawing.Point MousePosition { get; }
member this.MousePosition : System.Drawing.Point
Public ReadOnly Property MousePosition 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>

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

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

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

注釈

相対位置は、親を基準にしてページ上に要素を配置するために HTML で使用されます。

要素が相対的に配置されている場合、このプロパティは ClientMousePositionと同じ結果を返します。

適用対象

こちらもご覧ください