问:Form1_Paint方法能被调用吗?其参数怎样写?

时间:2021-09-09 19:46:25
用于画图的
private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
函数在别的函数中如何调用?

象下面这样为什么不行?
private void chkP_CheckedChanged(object sender, System.EventArgs e)
{
       Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e);
}

7 个解决方案

#1


晕,我只能这么说了!

#2


当然能调用啦,我用过。
sender就是一个OBJECT类型 ,我用的是THIS,
EVENTARGS没办法,只好NEW一个出来,呵。
我用这个重画窗体的

#3


如果用
private void chkP_CheckedChanged(object sender, System.EventArgs e)
{
  Graphics g = this.CreateGraphics();
}
或者new一个哈

#4


请问楼上两位弟兄:你们说的new 一个,是指什么,能否详细说一下?
后面可能在很多地方用到调用窗体的重绘函数。
我也是想在条件改变时重画窗体,但我对这些函数的参数之间的关系了解太少,希望大家帮忙!

最上面我提的问题中出现了太明显、太初级的错误,很不好意思,让大家见笑了!
还望大家帮忙!

#5


Form1_Paint(this,null);

#6


Form1_Paint(this,new PaintEventArgs(Graphics.FromImage(my),this.ClientRectangle));

#7


如果你只是需要重画窗口的话,不用试试这个函数 Refresh();刷新窗口显示。
至于Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)得调用嘛。
Form1_Paint(this, new PaintEventArgs(this.CreateGraphics(), new Rectangle(new Point(0,0), this.Size)););

#1


晕,我只能这么说了!

#2


当然能调用啦,我用过。
sender就是一个OBJECT类型 ,我用的是THIS,
EVENTARGS没办法,只好NEW一个出来,呵。
我用这个重画窗体的

#3


如果用
private void chkP_CheckedChanged(object sender, System.EventArgs e)
{
  Graphics g = this.CreateGraphics();
}
或者new一个哈

#4


请问楼上两位弟兄:你们说的new 一个,是指什么,能否详细说一下?
后面可能在很多地方用到调用窗体的重绘函数。
我也是想在条件改变时重画窗体,但我对这些函数的参数之间的关系了解太少,希望大家帮忙!

最上面我提的问题中出现了太明显、太初级的错误,很不好意思,让大家见笑了!
还望大家帮忙!

#5


Form1_Paint(this,null);

#6


Form1_Paint(this,new PaintEventArgs(Graphics.FromImage(my),this.ClientRectangle));

#7


如果你只是需要重画窗口的话,不用试试这个函数 Refresh();刷新窗口显示。
至于Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)得调用嘛。
Form1_Paint(this, new PaintEventArgs(this.CreateGraphics(), new Rectangle(new Point(0,0), this.Size)););