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

ASUS ROG Strix B650E-F Gaming WIFI | 2 TB Kingston Fury M.2 NVMe SSD | 32 GB Kingston DDR5 | Rysen 7 7800x3D | ASUS GeForce RTX 4070 12 GB | Fractal Design North

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

Äsch...