次の方法で共有


Shape.HitTest メソッド

画面上の指定された位置にある行またはシェイプ コントロールに関する情報を取得します。

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

構文

'宣言
Public MustOverride Function HitTest ( _
    x As Integer, _
    y As Integer _
) As Boolean
public abstract bool HitTest(
    int x,
    int y
)
public:
virtual bool HitTest(
    int x, 
    int y
) abstract
abstract HitTest : 
        x:int * 
        y:int -> bool 
public abstract function HitTest(
    x : int, 
    y : int
) : boolean

パラメーター

戻り値

型 : System.Boolean
ライン コントロールまたはシェイプ コントロールを指定された座標にある true ; それ以外 false。

解説

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

次の例では、Space キーを押すと、ポインターがコントロール上に配置されているかどうかを確認するために LineShape コントロールの HitTest のメソッドを使用する方法を示します。

Private Sub LineHitTestForm_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 = LineHitTestForm.MousePosition.X
        py = LineHitTestForm.MousePosition.Y
        hit = LineShape1.HitTest(px, py)
        MsgBox(CStr(hit))
    End If
End Sub
private void LineHitTestForm_PreviewKeyDown(object sender, 
    System.Windows.Forms.PreviewKeyDownEventArgs e)
{
    if (e.KeyCode == Keys.Space)
    {
        int px;
        int py;
        bool hit;
        string result;
        px = LineHitTestForm.MousePosition.X;
        py = LineHitTestForm.MousePosition.Y;
        hit = lineShape1.HitTest(px, py);
        result = hit.ToString();
        MessageBox.Show(result);
    }
}

.NET Framework セキュリティ

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

参照

関連項目

Shape クラス

Microsoft.VisualBasic.PowerPacks 名前空間

その他の技術情報

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

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

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