日期:2014-05-18  浏览次数:20794 次

C# gdi+
C# 使用GDI+绘图 怎么才可以实现同通过主窗体的单击事件改变数据后,重新再刷新绘画窗体,并显示新的数据  

  例如我现在的绘画窗体上绘画有 101 102 103 现在通过主窗体的一个单击事件添加了一个104 怎么样才能在显示窗体上绘画 101 102 103 104 并显示这样的数据到显示窗体上去 最好有相关的实现代码,在此先谢谢了

------解决方案--------------------
在改变数据的事件中调用绘图函数
------解决方案--------------------
强制Form重绘的方法就是 Form.Refresh();
------解决方案--------------------
OnPaint里画
Invalidate()刷新
------解决方案--------------------
。。。。搞错了,以为是vc呢
添加picturebox,在点击事件中,绘图,然后将绘制的图片用picturebox显示
------解决方案--------------------
C# code

         string str = "101 102 103";
         private void Form8_Paint(object sender, PaintEventArgs e)
         {
             Font font = new Font("宋体",10);
             Point p = new Point(0,0);
             e.Graphics.DrawString(str, font, Brushes.Black, p);
         }

         private void Form8_Click(object sender, EventArgs e)
         {
             str += " 104";
             this.Refresh();
         }

------解决方案--------------------
List<string> str = new List<string>();
int i = 100;
private void button1_Click(object sender, EventArgs e)
{
i++;
str.Add(i.ToString ());
this.Invalidate();
}

private void Form3_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
for (int i = 0; i < str.Count; i++)
{
g.DrawString(str[i], new Font("宋体", 12), Brushes.Black, 10 + 30 * i, 20);
}
}

private void Form3_Load(object sender, EventArgs e)
{
str.Clear();
}