problem med tegnede tråd, den fejler
Jeg er ved at lave en klasse der styrer en bold (i starten en ellipse) denne klasse har en metode der starter en tråd som så styrer bolden, problemet er at efter ca. 50 gennemløb fejler den med en illegal argument type, nogle, der kan hjælpepublic class Ball
{
#region Instance Variables
private float x_pos;
private float y_pos;
private float x_speed;
private float y_speed;
private static Graphics mainGraphics;
#endregion
public Ball(float startX, float startY, Graphics g)
{
x_pos=startX;
y_pos=startY;
mainGraphics=g;
}
#region Other methods
public void DrawBall()
{
Pen myPen=new Pen(Brushes.Black, 2);
while(2>1)
{
Console.WriteLine("x_pos: "+x_pos.ToString()+" y_pos: "+y_pos.ToString());
mainGraphics.DrawEllipse(myPen, x_pos, y_pos, 20, 20);
}
}
public void startBall()
{
Thread ballThread = new Thread(new ThreadStart(this.DrawBall));
Console.WriteLine("inde i tråd");
x_speed=1;
y_speed=1;
ballThread.Start();
while (!ballThread.IsAlive);
// Put the Main thread to sleep for 1 millisecond to allow ballThread
// to do some work:
Thread.Sleep(1);
}
#endregion
#region Properties
public float XPosition
{
get { return x_pos; }
set { x_pos=value; }
}
public float YPosition
{
get { return y_pos; }
set { y_pos=value; }
}
#endregion
}
}
OG her er fejlbeskeden:
x_pos: 100 y_pos: 100 //et gennemløb
x_pos: 100 y_pos: 100 //et andet gennemløb (ca. 50 af disse)
An unhandled exception of type 'System.ArgumentException' occurred in system.drawing.dll
Additional information: Invalid parameter used.
