paint事件中图像一闪而消失的问题
我在form窗口中放了1个tablelayout控件,然后又放了一个panel控件,最后放了一个label控件,我在label控件里画图,但执行label控件paint事件时,图像就闪了一下就消失了。问高手这是怎么回事? --------------------编程问答-------------------- 画图的Graphics可能选的不合适。应该使用它的参数里的Graphics(e.Graphics); --------------------编程问答-------------------- 代码贴出来帮你看,最近也在搞图形 --------------------编程问答-------------------- private void CreateForm()
{
//创建画板
Graphics g = lblForm.CreateGraphics();
//this.SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint, true);
try
{
g.Clear(Color.White);
Font font = new System.Drawing.Font("Arial", 9, FontStyle.Regular);
Font font2 = new System.Drawing.Font("Arial", 8, FontStyle.Regular);
System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, lblForm.Width, lblForm.Height), Color.Blue, Color.Blue,1.2f,true);
//填充画板背景色
g.FillRectangle(Brushes.White, 0, 0, lblForm.Width, lblForm.Height);
//画图片边框线
g.DrawRectangle(new Pen(Color.Blue), 0, 0, lblForm.Width - 1, lblForm.Height - 1);
Pen mypen = new Pen(brush, 1);
Pen mypen2 = new Pen(Color.Red, 2);
//绘制纵向线条
int x = 20;
for (int i = 0; i < 12; i++)
{
g.DrawLine(mypen, x, 30, x, 200);
x += 20;
}
}
finally
{
g.Dispose();
} --------------------编程问答-------------------- lblForm是什么?是Label?
你为什么不添加Label的Paint事件呢?把画的代码放到Paint里,不要CreateGraphics。
补充:.NET技术 , C#