2016-06-04 4 views
0

Ich versuche, eine Pop-up-Nachricht zu erhalten, wenn auf den Kuchen-Knoten geklickt wird. Es druckt auf der Konsole, aber "JOptionPane.showMessageDialog (null," Test ");" stürzt das Programm ab, wenn ich auf den Kuchen klicke (keine Fehler). Irgendwelche Ideen?Keine Fehler, aber Absturz - JOptionPane - JavaFX

class Cake extends Item { 

double dx=3,dy=1.6; 

Cake(String imageFile, double x, double y) { 
    super(imageFile, x, y); 
} 


@Override 
public void move() { 
    this.setX(this.getX()+dx); 

    if(this.getX()>749 || this.getX()<-20) { 
     dx=-dx; 
    } 

    this.setY(this.getY()+dy); 

    if(this.getY()>530 || this.getY()<0) { 
     dy=-dy; 
    } 


} 


@Override 
public void collision() { 
    //System.out.println("Cake"); 
    JOptionPane.showMessageDialog(null,"Test"); 


} 

} 
+0

Haben Sie bereits lesen Sie die [Artikel] (http://stackoverflow.com/questions/21108927/joptionpane-in-javafx-making-window-not- antworten) –

+2

Aber seit das geschrieben wurde, hat JavaFX die Klasse [Dialog] (http://docs.oracle.com/javase/Dialog.html) eingeführt. –

+0

Ich denke, anstelle von 'null' sollte es eine Bühne geben –

Antwort

2

Verwenden Sie Swing JOptionPane nicht in einer JavaFX-Anwendung. Verwenden Sie Dialog, oder in diesem Fall ein Alert statt:

@Override 
public void collision() { 
    //System.out.println("Cake"); 

    Alert alert = new Alert(Alert.AlertType.INFORMATION); 
    alert.setHeaderText("Test"); 
    alert.showAndWait(); 
}