Dit moet je zeker wel op weg helpen.
[CPP] private void Form1Load(object sender, EventArgs e)
{
List<PictureBox> tegels = new List<PictureBox>();
const int speelveldBreedte = 8;
const int speelveldHoogte = 8;
const int tegelBreedte = 50;
const int tegelHoogte = 50;
for (int i = 0; i < speelveldHoogte; i++)
{
for (int j = 0; j < speelveldBreedte; j++)
{
PictureBox p = new PictureBox
{
Width = tegelBreedte,
Height = tegelHoogte,
Location = new Point(j*tegelBreedte, i*tegelHoogte),
BorderStyle = BorderStyle.FixedSingle
};
tegels.Add(p);
Controls.Add(p);
}
}
}
[/CPP]
Object-oriented ::
[CPP] public class Speelveld : Panel
{
public static Panel MaakSpeelveld(int breedte, int hoogte)
{
const int tegelBreedte = 50;
const int tegelHoogte = 50;
Speelveld speelveld = new Speelveld { Width = breedte * tegelBreedte, Height = hoogte * tegelHoogte };
for (int i = 0; i < hoogte; i++)
{
for (int j = 0; j < breedte; j++)
{
Tegel t = new Tegel(j * tegelBreedte, i * tegelHoogte) { BorderStyle = BorderStyle.FixedSingle, Width = tegelBreedte, Height = tegelHoogte };
speelveld.Controls.Add(t);
}
}
return speelveld;
}
}
public class Tegel : PictureBox
{
public Tegel(int x, int y)
{
Location = new Point(x, y);
Tegels.Add(this);
}
}
public class Tegels
{
private static readonly List<Tegel> tegelList = new List<Tegel>();
public static void Add(Tegel t)
{
tegelList.Add(t);
}
public static void Remove(Tegel t)
{
tegelList.Remove(t);
}
public IEnumerable<Tegel> GetAll()
{
return tegelList;
}
}[/CPP]
[CPP]private void Form1Load(object sender, EventArgs e)
{
Controls.Add(Speelveld.MaakSpeelveld(8, 8));
}[/CPP]