C#中如何使用多线程在同一块画板上画图

来源:百度知道 编辑:UC知道 时间:2024/05/21 08:19:53
就是在一块picturebox,我要使用两个线程同时画两条直线,该如何实现呢
其中一个线程调用的方法
Image MyImage=new Bitmap(this.pictureBox1.width, this.pictureBox1.height);
Graphics gra=Graphics.FromImage(MyImage);
gra.DrawLine(p,new Point(x,y), new Point(x1,y1));
this.pictureBox1.Image=MyImage;
this.pictureBox1.Refresh();
另一个线程该如何调用gra呢

另一个线程该如何调用gra呢
------------------------------
线呈只能调用方法,不能调用gra的,它不是方法。
我指着两个线呈同时划线,因为线呈很难控制。
所以真想绝对同时似乎很难做,
只要你启动两个线呈划线,肯定是同是出现的
因为看不出来。
public void DrawLine()
{
Graphics gs = pictureBox1.CreateGraphics();
SolidBrush brush_1 = new SolidBrush(Color.Red);
Pen pen1 = new Pen(brush_1, 10);
gs.DrawLine(pen1, new Point(10, 50), new Point(50, 50));
}
public void DrawLine1()
{
Graphics gs = pictureBox1.CreateGraphics();
SolidBrush brush_1 = new SolidBrush(Color.Red);
Pen pen1 = new Pen(brush_1, 10);
gs.DrawLine(pen1, new Point(50, 50), new Point(100, 100));
}

private void button1_Click(object sender, EventArgs e)
{
Thread thread = new Thread(new ThreadStart(DrawLine));
Thread thread1 = new Thre