2008-12-11 14 views
7

मैं जावाएफएक्स एप्लिकेशन के लिए एक कस्टम लोडिंग स्क्रीन बनाना चाहता हूं। नहीं चाहते कि उपयोगकर्ता जावा कॉफी कप आइकन देखे, मैं अपना ग्राफिक वहां रखना चाहता हूं!JavaFX में कस्टम लोडिंग स्क्रीन कैसे बनाएं?

मुझे पता चला है कि एक स्थिर छवि, या यहां तक ​​कि एनिमेटेड जीआईएफ भी प्रदान करना है, लेकिन मुझे फ्लैश जैसी स्क्रीन में अधिक दिलचस्पी है, जहां मैं निर्दिष्ट कर सकता हूं कि छवि की स्थिति कुछ प्रतिशतों की तरह दिखती है।

कोई विचार?

+0

यदि आप जावा एप्लिकेशन को अपने एप्लिकेशन को लॉन्च करने के लिए शुरू कर रहे हैं तो यह आसानी से किया जा सकता है। जेएनएलपी फ़ाइल में, आप उल्लेख कर सकते हैं: ' '। यह ' 'टैग के तहत है। – Aspirant

उत्तर

2

यदि आप This blog entry पर दिखाए गए अनुसार चीजों को सेट कर रहे हैं, तो ऐसा लगता है कि उत्तर 'नहीं' होगा - लोडिंग ग्राफ़िक एप्लेट को पारित किए गए समग्र विकल्पों का हिस्सा है। चूंकि यह ऐपलेट कोई जावा कोड नहीं हो सकता है (न केवल जावाएफएक्स), आपके कस्टम रेंडरर को टाई करने का कोई तरीका नहीं है।

3

JavaFX2 के लिए, आप कस्टम प्रीलोडर सेट कर सकते हैं। तब आप दृश्य पर पूरा नियंत्रण रखते हैं। मैंने उन्हें व्यक्तिगत रूप से उपयोग नहीं किया है, लेकिन यह वही हो सकता है जो आप चाहते हैं। http://docs.oracle.com/javafx/2/deployment/preloaders.htm

2

आप जावा टाइमर का उपयोग करना चाहिए:

stage.getIcons().add(new Image("images/myimage.png")); 

और यहाँ एक बहुत ही स्पष्ट preloader भी वहाँ बाहर स्क्रीन और भयानक सीएसएस के लिए एक संदर्भ है।

Timer tm= new Timer(); 

    Stage ilk; 
    int count; 

public void check() {  

    ilk=new Stage(); 
    TimerTask mission; 
    gorev = new TimerTask() { 

     @Override 
     public void run() { 

       Group root = new Group();  

       Scene scene; 
      scene = new Scene(root, 960, 540); 
         scene.setFill(Color.BLACK); 
         ilk.setScene(scene); 
         ilk.setTitle("Splash Screen"); 

    sayac++; 
    if(count==5){ 

        tm.cancel(); 

         ilk.show(); 

       } 



     } 


    }; 
    tm.schedule(mission, 0, 2000); 


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