请问C#里的Graphics类画出来的矩形可以添加单击事件吗?我想用它做一个扫雷能行吗?
4个回答
2014-03-18
展开全部
可以。捕捉 _MouseMove事件 取得 e.Location判断 Rectangle.Contains(e.Location) 然后。。。最后重绘
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public Form1() {
InitializeComponent();
}
private List<Rectangle> rect = new List<Rectangle>();
protected override void OnPaint(PaintEventArgs e)
{
rect.Clear();
using (Graphics g = this.CreateGraphics()) {
Rectangle re = new Rectangle(new Point(100,200),new Size(300,300));
Brush br = Brushes.Yellow;
g.FillRectangle(br, re);
rect.Add(re);
g.Dispose();
}
}
private void Form1_MouseClick(object sender, MouseEventArgs e) {
if (rect.Count > 0) {
if (rect[0].Contains(MousePosition)) {
MessageBox.Show("dddd");
}
}
}
可以添加单击事件 实现的方法是:判读鼠标是否在这个区域内
InitializeComponent();
}
private List<Rectangle> rect = new List<Rectangle>();
protected override void OnPaint(PaintEventArgs e)
{
rect.Clear();
using (Graphics g = this.CreateGraphics()) {
Rectangle re = new Rectangle(new Point(100,200),new Size(300,300));
Brush br = Brushes.Yellow;
g.FillRectangle(br, re);
rect.Add(re);
g.Dispose();
}
}
private void Form1_MouseClick(object sender, MouseEventArgs e) {
if (rect.Count > 0) {
if (rect[0].Contains(MousePosition)) {
MessageBox.Show("dddd");
}
}
}
可以添加单击事件 实现的方法是:判读鼠标是否在这个区域内
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-03-18
展开全部
你把图形画在控件上,比如PictureBox,然后在PictureBox的MouseUp事件里获得鼠标位置,然后计算出你点击的是哪个矩形
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-03-18
展开全部
继承控件写自己的方法和属性
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询