C# pictureboxarray

Status
Niet open voor verdere reacties.

jura1993

Gebruiker
Lid geworden
5 aug 2010
Berichten
46
Hoi iedereen,

Ik heb in C# een picturebox aangemaakt die een route gaat rijden.
Mijn vraag is hoe zorg ik dat 15 pictureboxes tegelijkertijd een route gaan rijden zonder dat ik er 15 moet aanmaken.
Hier volgt mijn code:



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace belangrijk
{
public partial class uitleg : Form
{

Point[][] m_paaRoutes = new Point[3][];

int m_iRouteIndex = 0;

int m_iRoute = 0;

int m_iStepsize = 15;

int n = 15;



Random r = new Random();
public uitleg()
{
InitializeComponent();

m_paaRoutes[0] = new Point[4] { button1.Location, button2.Location, button3.Location, button4.Location };
m_paaRoutes[1] = new Point[4] { bt8.Location, bt7.Location, button6.Location, button5.Location };
m_paaRoutes[2] = new Point[4] { button1.Location, button2.Location, button3.Location, button4.Location };

m_iRoute = r.Next(0, 3);
pbme.Location = m_paaRoutes[m_iRoute][m_iRouteIndex];
m_iRouteIndex++;
}
private void timer1_Tick(object sender, EventArgs e)
{

if (m_iStepsize > Math.Abs(pbme.Left - m_paaRoutes[m_iRoute][m_iRouteIndex].X))
{
pbme.Left = m_paaRoutes[m_iRoute][m_iRouteIndex].X;
}
else
{
if (pbme.Left < m_paaRoutes[m_iRoute][m_iRouteIndex].X)
{
pbme.Left += m_iStepsize;
}
else if (pbme.Left > m_paaRoutes[m_iRoute][m_iRouteIndex].X)
{
pbme.Left -= m_iStepsize;
}

if (pbme.Location == m_paaRoutes[m_iRoute][m_iRouteIndex])
{
m_iRouteIndex++;
if (m_iRouteIndex == m_paaRoutes[m_iRoute].Length)
{
m_iRouteIndex = 0;
m_iRoute = r.Next(0, 3);
pbme.Location = m_paaRoutes[m_iRoute][m_iRouteIndex];
}

}
}
if (m_iStepsize > Math.Abs(pbme.Top - m_paaRoutes[m_iRoute][m_iRouteIndex].Y))
{
pbme.Top = m_paaRoutes[m_iRoute][m_iRouteIndex].Y;
}
else
{
if (pbme.Top < m_paaRoutes[m_iRoute][m_iRouteIndex].Y)
{
pbme.Top += m_iStepsize;
}
else if (pbme.Top > m_paaRoutes[m_iRoute][m_iRouteIndex].Y)
{
pbme.Top -= m_iStepsize;
}
}



if (pbme.Location == m_paaRoutes[m_iRoute][m_iRouteIndex])
{
m_iRouteIndex++;
if (m_iRouteIndex == m_paaRoutes[m_iRoute].Length)
{
m_iRouteIndex = 0;
m_iRoute = r.Next(0, 3);
pbme.Location = m_paaRoutes[m_iRoute][m_iRouteIndex];
}

}






}
}
}
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan