leprogrammer
Programmer
Hey im back with a new questions / problems
Question 1:
I have a image that is in a picturebox which is called pictureBox1
I want to read monstersetbase.txt and add small ellipses to my image. The position of the ellipse comes from my monstersetbase.txt. The image is 256x256 and the coordinates is example 125x150.
I figured out a way to write a ellipse on the picturebox. It looks like this:
And on my form load:
Now my problem is that I cant seem to figure out how to read the txt file properly when I need all the data
If I use for example:
then im getting the error:
Index was outside the bounds of the array.
Any suggestions?
My monstersetbase.txt:
78 and 60 is the x and y coordinates in the text above.
Question 2:
After I insert the ellipse I want it to be "link" like when I click on it something happens
I also want to display a tooltil when I have the mouse over my ellipse is that possible?
Question 1:
I have a image that is in a picturebox which is called pictureBox1
I want to read monstersetbase.txt and add small ellipses to my image. The position of the ellipse comes from my monstersetbase.txt. The image is 256x256 and the coordinates is example 125x150.
I figured out a way to write a ellipse on the picturebox. It looks like this:
Code:
public void pictureBox1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
System.Drawing.Graphics g = e.Graphics;
g.DrawEllipse(System.Drawing.Pens.Red, 125, 150, 2, 2);
}
And on my form load:
Code:
public void Form1_Load(object sender, EventArgs e)
{
pictureBox1.Paint += new PaintEventHandler(this.pictureBox1_Paint);
this.Controls.Add(pictureBox1);
}
Now my problem is that I cant seem to figure out how to read the txt file properly when I need all the data
If I use for example:
Code:
public void pictureBox1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
String line;
String data;
System.Drawing.Graphics g = e.Graphics;
// Reading txt file from fileLocation
using (StreamReader sr = new StreamReader(Convert.ToString(@fileLocation)))
{
while ((line = sr.ReadLine()) != null)
{
// Converting line to string from txt file
data = Convert.ToString(line);
// Splitting data into piecesMap[]
String[] piecesMap = data.Split('\t');
// Converting x/y cord to float from string
float xCord = float.Parse(piecesMap[3]);
float yCord = float.Parse(piecesMap[4]);
// Displaying ellipse
g.DrawEllipse(System.Drawing.Pens.Red, xCord, yCord, 2, 2);
}
}
}
then im getting the error:
Index was outside the bounds of the array.
Any suggestions?
My monstersetbase.txt:
Code:
3
0 0 30 78 60 240 240 -1 5 // Red Dragon
1 0 30 185 132 185 132 -1 10 // Golden Titan
2 0 30 183 128 188 135 -1 10 // Golden Solider
3 0 30 10 10 240 240 -1 12 // Golden Goblin
4 0 30 10 10 240 240 -1 8 // Golden Dragon
5 0 30 185 132 185 132 -1 7 // Golden Lizard King
6 0 30 132 83 132 83 -1 10 // Golden Vepar
7 0 30 183 128 188 135 -1 6 // Golden Tantalos
8 0 30 132 83 138 90 -1 10 // Golden Wheel
end
1
9 33 10 85 162 95 168 -1 5 // Kundun Demon
10 29 30 40 113 45 116 -1 3 // Kundum Demon
11 41 5 126 160 125 161 -1 2 // Kundum Demon
12 38 5 106 161 111 160 -1 2 // Kundum Demon
end
78 and 60 is the x and y coordinates in the text above.
Question 2:
After I insert the ellipse I want it to be "link" like when I click on it something happens
I also want to display a tooltil when I have the mouse over my ellipse is that possible?