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
パラメータ
x
型 : System.Int32水平画面座標。
y
型 : System.Int32垂直画面座標。
戻り値
型 : 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);
}
}
アクセス許可
- 直前の呼び出し元に対する完全な信頼。このメンバは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。
参照
参照
Microsoft.VisualBasic.PowerPacks 名前空間
その他の技術情報
ライン コントロールとシェイプ コントロールの概要 (Visual Studio)
方法 : LineShape コントロールを使用して線を描画する (Visual Studio)
方法 : OvalShape コントロールおよび RectangleShape コントロールを使用して図形を描画する (Visual Studio)