2009-12-30 16 views
8

से छवि प्राप्त करें मेरे प्रोजेक्ट में मेरे पास 2 पैकेज हैं। छवियों - छवियाँ हो और अधिसूचना - जावा फ़ाइलोंसापेक्ष पथ

अधिसूचना में शामिल/main.java मैं इस कोड

Image image = Toolkit.getDefaultToolkit().getImage("/images/key-16x16.png"); 

का उपयोग कर छवि से छवि वस्तु हो और मैं छवि नहीं मिल सकता है।

मैं इस बग को कैसे ठीक कर सकता हूं।

उत्तर

17

की कोशिश कर सकते हैं और मैं मेरी समस्या हल कर दिया है।

Image image = new ImageIcon(this.getClass().getResource("/images/bell-icon16.png")).getImage(); 

"इस" एक वर्ग फैली JFrame

+0

ImageIcon()। getImage() एक अच्छा समाधान है! विंडोज 64 बिट का उपयोग कर मेरे लिए भी काम करता है। : डी – gumuruh

7

/ का अर्थ एक पूर्ण पथ है, जावा वेब-ऐप्स को सहेजें जहां / संदर्भ के सापेक्ष है। इसलिए, मैं सापेक्ष यूआरएल का उपयोग करने का सुझाव दूंगा, इसका मतलब है कि / से पहले छुटकारा पाएं, और फिर सही पथ प्रदान करें।

मामले में, फिर भी आप इसे हल नहीं कर सकते हैं, उसी छवि पर फ़ाइल बनाने का प्रयास करें जिसे आप छवि के लिए ढूंढ रहे हैं। इस तरह आप जान लेंगे कि आप कहां देख रहे हैं और आपको कहां देखना चाहिए।

+0

मैं नहीं कर सका दो घंटे के लिए मेरी समस्या का पता लगाएं ... धन्यवाद – DGund

1

तुम भी मैं Netbeans उपयोग कर रहा हूँ जावा डेस्कटॉप अनुप्रयोग विकसित करने के लिए

Image image = new ImageIcon(path).getImage(); 
1

मैं भी इस पर किया गया है और यह पता चला है कि आप अपने स्रोत फ़ोल्डर के अंदर एक पैकेज बनाने की जरूरत है। इंस्टॉलेशन के लिए यदि आप src फ़ोल्डर के अंदर छवियों नामक पैकेज बनाते हैं, तो आपका सापेक्ष पथ /images/yourimage.png होगा।

ध्यान दें कि स्लैश (/) वहां होना चाहिए! यहाँ http://forums.macrumors.com/showthread.php?t=533922

अधिक जानकारी यह काम करता है, तो आप एक JFrame कि काम करेंगे है के लिए मुझे

1
Toolkit tk = Toolkit.getDefaultToolkit(); 
Class<? extends JFrame> j = YOURJFRAME.getClass(); 
Image image = tk.createImage(j.getResource("/images/bell-icon16.png")); 

कि कोड का प्रयास करें। आप एक एप्लेट है, तो बस का उपयोग

Toolkit tk = Toolkit.getDefaultToolkit(); 
Image image = tk.createImage("images/bell-icon16.png"); 
एप्लेट के साथ

आप शुरुआत में/उपयोग करने के लिए कभी नहीं चाहते हैं, लेकिन अगर आप एक JFrame है, और आप getResource उपयोग कर रहे हैं, आप की जरूरत/शुरुआत में पथ का

+0

इस के लिए, मैंने नेटबीन्स के अंदर काम करने की कोशिश की।लेकिन एक बार जब मैं ऐप को बाहरी पैकेज इंस्टॉलर में पैक करता हूं, तो लगता है कि संदर्भ ठीक से काम नहीं करता है। :(पता नहीं क्यों। – gumuruh

+0

@gumuruh कौन सा ऐप इंस्टॉलर है? मैं शायद मदद करने में सक्षम नहीं हो सकता, लेकिन संभवतः यह क्या करता है जो आपको करने की ज़रूरत है। – daboross

+0

कभी नहीं 'दाबोरोस, कोज़ मैं पहले से ही @ChanPye समाधानों का पालन करता हूं और यह काम करता है।: डी ऐप इंस्टॉलर जो मैंने पिछली बार लिखा था वह उन्नत इंस्टॉलर है।: डी – gumuruh

0
SwingResourceManager.getImage(YourClass.class,"key-16x16.png"); 

getIcon विधि चिह्न के रूप में समान

1

वापस आ जाएगी बैठाना समाधान से काम नहीं होता, यह (जो मेरे लिए काम किया) की कोशिश:

Image image = Toolkit.getDefaultToolkit().createImage(this.getClass().getResource("/Images/bell-icon16.png")); 
0
setIconImage(Toolkit.getDefaultToolkit().getImage(getClass().getResource("../resources/MainIcon.png"))); 
संबंधित मुद्दे