2012-08-30 9 views
5

मेरे पास एक ऐसा एप्लिकेशन है जहां अपवाद होने पर मैं निम्नलिखित कोड को कॉल करता हूं- यानी, यह "कोशिश/पकड़" के "पकड़" के भीतर स्थित है। यह केवल एक "पॉपअप" जैसी खिड़की बनाता है जो उपयोगकर्ता को इसके बजाय एक int दर्ज करने के लिए कहता है।प्राथमिक चरण बंद होने पर सभी चरणों को कैसे बंद करें?

Stage dialogStage = new Stage(); 
dialogStage.initModality(Modality.WINDOW_MODAL); 
dialogStage.setScene(new Scene(VBoxBuilder.create(). 
children(new Text("Please enter an integer."), new Button("Ok.")). 
alignment(Pos.CENTER).padding(new Insets(5)).build())); 
dialogStage.show(); 

समस्या सिर्फ मंच lingers कि भले ही प्राथमिक स्तर (जो सार्वजनिक शून्य शुरू (चरण primaryStage) में पैरामीटर है) बंद कर दिया जाता है।

क्या मैंने कोशिश की ?:

मैं एक वर्ग चर के रूप में यह परिभाषित करते हुए dialogstage पूरी कक्षा में दृश्यमान हो जाने की है। तब मैं निम्नलिखित कोड लागू किया:

primaryStage.setOnCloseRequest((new EventHandler<WindowEvent>(){ 

     @Override 
     public void handle(WindowEvent arg0) { 
          arg0.consume(); 
      try 
      { 
      dialogStage.close(); 

          } 
      catch(Exception ex) 
      { 
       System.out.print(ex.getMessage()+"\r\n"); 
      } 

     } 
    })); 
} 

यह "काम" है कि में dialogstage बंद कर दिया है एक उपयोगकर्ता मुख्य अनुप्रयोग से बाहर करने का प्रयास करते हैं, हालांकि, यह वास्तव में ऐसा नहीं करता कि मैं क्या इरादा: जब आप बंद करने की कोशिश प्राथमिक चरण केवल संवाद बंद है।

यह एक सौंदर्यपूर्ण रूप से नापसंद समाधान भी है क्योंकि मैं नहीं चाहता कि पूरी कक्षा बेवकूफ संवाद बॉक्स के बारे में जान सके जो केवल एक कोशिश/पकड़ में स्थित है और कभी भी इसका उपयोग नहीं किया जा सकता है।

मैं जानना चाहता हूं कि कोई आसान समाधान है जो प्राथमिक चरण के दौरान संवाद को बंद करने के लिए कहता है और जहां मुझे अपने प्रयास/पकड़ के बाहर अधिक कोड लिखना नहीं है।

उत्तर

7

घटना पर OnCloseRequest अपने मुख्य मंच पर, प्रदर्शन Platform.exit (docs.oracle.com/javafx/2/api/javafx/application/Platform.html)

+0

अच्छा लगता है, लेकिन अब यह परीक्षण करने के लिए असमर्थ। धन्यवाद। –

+0

एक मां की तरह काम करता है। धन्यवाद! –

संबंधित मुद्दे