Permalänk
Medlem

Java swing krashar

Hallå,
Jag har skrivit ett LCR-spel i Java. Jag försöker nu implementera ett Swing GUI för det och har lyckats med att utforma det. Allt fungerar som det skall men det kan hända att programmet kraschar. När detta händer kan fönstret inte stängas. Det är som att programmet fastnar i en loop trots att den problematiska koden inte innehåller några loopar. Om någon vet vad det kan bero på hade jag varit väldigt tacksam för lite hjälp!
MVH,
Simon

Koden:

private static void render() {
Scanner scr = new Scanner(System.in);
System.out.println("Players: " + game.p1.name + " " + "(" + game.p1.Chips + " Chips)" + " " + game.p2.name + " " + "(" + game.players[1].Chips + " Chips)" + " " + game.p3.name + " " + "(" + game.players[2].Chips + " Chips)");
g.uppdateScore(); //det är vid denna rad allt slutar fungera.
System.out.println("Would you like to continue? r = resume, q = quit");
String answer;
while (true) {
answer = scr.nextLine();
if (answer.equals("r")) break;
else if (answer.equals("q")) System.exit(1);
else System.out.println("Oops, that was not a satisfactory answer. Please try again!");
}

}

g.uppdateScore() kallar på
void uppdateScore(){
String a = Integer.toString(Main.game.p1.Chips);
String b = Integer.toString(Main.game.p2.Chips);
String c = Integer.toString(Main.game.p3.Chips);

Adam.setText(a);
Bertil.setText(b);
Caecar.setText(c);
}

Permalänk
Medlem

Får du någon exception eller stack där kraschen beskrivs tydligare ?

Visa signatur

Corsair Obsidian 250D | i5 7600K | Gigabyte Z270N WiFi | Samsung 960 EVO 250GB | Fractal Design Integra M 650W | Corsair Hydro H90 |Kingston 8GB 2133M DDR4 CL14 | Asus GeForce GTX 970 4GB STRIX DC2 OC MAX |

Permalänk
Medlem

Vad händer om någon av p1-3 inte har Chips? Eller om det bara finns p1-p2? Är den null? I såfall försöker du göra om null till en sträng, i och med Integer.toString vilket gör att du får ett runtime-fel.
Utan all kod och/eller exception/stack är det såklart enbart gissningar

Skickades från m.sweclockers.com

Visa signatur

Outtröttlig, löpartokig besserwisser!

Bli vegan! För djuren, planeten, hälsan och våra barns skull!