//De scherm resolutie van mijn laptop, wat mijn actieve werkcomputer is voor deze opdracht, is 1386 bij 788. //Dit zorgt ervoor dat ik niet het venster groter kan maken dan deze resolutie. //Simpele null check in het geval dat deze methode op een of andere manier twee keer wordt aangeroepen. private void TekenGrond_Paint(object sender, PaintEventArgs e) { if (spoorbaan == null && controller == null) { spoorbaan = new Spoorbaan(100, 100, 1000, 1000); controller = new Controller(spoorbaan, overgangTimer, storingTimer, g); } spoorbaan.Teken(g); }
//Controller krijgt de timer mee vanuit de form, te samen met een graphics element die gemaakt is door het tekenvlak public Controller(Spoorbaan spoorbaan, Timer overgangTimer, Timer storingTimer, Graphics g) { this.spoorbaan = spoorbaan; this.overgangTimer = overgangTimer; this.storingTimer = storingTimer; overgangTimer.Tick += new EventHandler(overgangTimer_Elapsed); storingTimer.Tick += new EventHandler(storingTimer_Elapsed); this.g = g; }
public void SpoorbaanCreationTest() { //Arrange Spoorbaan spoorbaan = new Spoorbaan(1, 1, 1, 1); Control control = new Control(); Graphics g = control.CreateGraphics(); //Act spoorbaan.Teken(g); //Assert Assert.NotEmpty(spoorbaan.Overgangen); Assert.NotEmpty(spoorbaan.Stations); }
public void ControllerCreationTest() { //Arrange Spoorbaan spoorbaan = new Spoorbaan(1, 1, 1, 1); Control control = new Control(); Graphics g = control.CreateGraphics(); Timer timer = new Timer(); Timer timer2 = new Timer(); Controller controller = new Controller(spoorbaan, timer, timer2, g); bool test = false; //Act controller.ZetStoring(test); //Assert }