回 帖 发 新 帖 刷新版面

主题:问个问题 如何在MouseClick事件里添加画图的代码

我能够在paint的事件里画图,代码如下
private void pictureBox1_Paint(object sender, PaintEventArgs e)
        {
            Graphics g = e.Graphics;
            g.FillRectangle(new SolidBrush(Color.White), 0, 0, 480, 480);
                
            g.DrawRectangle(p1, 0, 0, 480, 480);
                
            for (int z = 0; z < 460; z += 20)
            {       
                g.DrawLine(p2, 20 + z, 0, 20 + z, 480);
            }

            for (int z = 0; z < 460; z += 20)
            {
                g.DrawLine(p2, 0, 20 + z, 480, 20 + z);
            }
        }
其中的Graphics g = e.Graphics;生成我要的graphics

但是我现在要实现的是在pictureBox1里点击鼠标以后,在pictureBox1中画一条线
比如用pen1 从(1,1)画黄线到(2,2)
但是
private void pictureBox1_MouseClick(object sender, MouseEventArgs e)
  里面的MouseEventArgs e 并不是PaintEventArgs 不能像上面一样用e.Graphics生成我要的graphic,也就不能用Graphics.DrawLine了
  这个应该怎么解决呢?

  我是第一次来这里,刚开始学C#,谢谢大牛指点下哈

回复列表 (共1个回复)

沙发

Graphics g = Graphics.FromHwnd(pictureBox1.Handle);

我来回复

您尚未登录,请登录后再回复。点此登录或注册