次の方法で共有


SimpleShape.HitTest メソッド

更新 : 2007 年 11 月

画面上の指定されたポイントにシェイプ コントロールが配置されているかどうかを判断します。

名前空間 :  Microsoft.VisualBasic.PowerPacks
アセンブリ :  Microsoft.VisualBasic.PowerPacks.Vs (Microsoft.VisualBasic.PowerPacks.Vs.dll 内)

構文

'宣言
Public Overrides Function HitTest ( _
    x As Integer, _
    y As Integer _
) As Boolean
'使用
Dim instance As SimpleShape
Dim x As Integer
Dim y As Integer
Dim returnValue As Boolean

returnValue = instance.HitTest(x, y)
public override bool HitTest(
    int x,
    int y
)
public:
virtual bool HitTest(
    int x, 
    int y
) override
public override function HitTest(
    x : int, 
    y : int
) : boolean

パラメータ

戻り値

型 : System.Boolean

指定した座標にシェイプ コントロールがある場合は true。それ以外の場合は false。

解説

x パラメータおよび y パラメータは、コントロール コンテナではなく、画面を基準とする現在のマウスの相対座標を表します。

OvalShape コントロールの HitTest メソッドを使用して、Space キーが押されたときにポインタがコントロール上にあるかどうかを判断する方法を次の例に示します。

Private Sub Form1_PreviewKeyDown(ByVal sender As Object, _
 ByVal e As System.Windows.Forms.PreviewKeyDownEventArgs) _
 Handles Me.PreviewKeyDown
    If e.KeyCode = Keys.Space Then
        Dim px As Integer
        Dim py As Integer
        Dim hit As Boolean
        px = MousePosition.X
        py = MousePosition.Y
        hit = OvalShape1.HitTest(px, py)
        MsgBox(CStr(hit))
    End If
End Sub
private void form1_PreviewKeyDown(object sender, 
    System.Windows.Forms.PreviewKeyDownEventArgs e)
{
    if (e.KeyCode == Keys.Space)
    {
        int px;
        int py;
        bool hit;
        string result;
        px = MousePosition.X;
        py = MousePosition.Y;
        hit = ovalShape1.HitTest(px, py);
        result = hit.ToString();
        MessageBox.Show(result);
    }
}

アクセス許可

  • 直前の呼び出し元に対する完全な信頼。このメンバは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

参照

SimpleShape クラス

SimpleShape メンバ

Microsoft.VisualBasic.PowerPacks 名前空間

その他の技術情報

ライン コントロールとシェイプ コントロールの概要 (Visual Studio)

方法 : LineShape コントロールを使用して線を描画する (Visual Studio)

方法 : OvalShape コントロールおよび RectangleShape コントロールを使用して図形を描画する (Visual Studio)