円と円というより、円と点だったので、それっぽくしてみた
当たってないとき
当たっているとき
マウスポインタが円に入ったらtrue。円から出ていたらfalse。
// 当たり判定のある円の中心
int tx = this.PointToScreen(new Point(0,0)).X + 150;
int ty = this.PointToScreen(new Point(0, 0)).Y + 150;
// コントロール上のマウスの位置を取得
int x = Control.MousePosition.X;
int y = Control.MousePosition.Y;
int r1 = 100; // 当たり判定のある円の半径
int r2 = 0; // マウスポインタの半径
int a = tx - x;
int b = ty - y;
int r = r1 + r2;
if (a * a + b * b <= r * r) // マウスポインタが円の中に入っていれば
{
//略
}
参考サイト
private void match_button1_Click(object sender, EventArgs e)
{
try
{
Regex rx = new Regex(regex_textBox.Text);
TextBox[] tb = { match_textBox1, match_textBox2, match_textBox3, match_textBox4, match_textBox5 };
// マッチtextboxを空に
for (int i = 0; i < tb.Length; i++ )
{
tb[i].Text = "";
}
// マッチしなかったら、
if (!rx.IsMatch(string_textBox.Text))
{
MessageBox.Show("マッチしませんでした", "Match false");
return;
}
Match m = rx.Match(string_textBox.Text);
// マッチした文字列をテキストボックスにいれる
for (int i = 0; (i < m.Length) && (i < tb.Length); i++)
{
tb[i].Text = m.Groups[i].ToString();
}
}
catch(Exception ex)
{
MessageBox.Show(ex.ToString(), "error");
}
}
参考サイト