दिलचस्प पोस्ट
जावा 8 स्ट्रीम की .min () और .max (): यह संकलन क्यों करता है? अजगर में आइटम आवृत्ति गणना एकाधिक सीमांकक के साथ स्ट्रिंग.split () का उपयोग करें एंड्रॉइड जीसीएम सफलतापूर्वक भेजा गया लेकिन कुछ उपकरणों पर प्राप्त नहीं हुआ AngularJS फ़ोल्डर संरचना संकलित समय में Constexpr का उपयोग कर एक आरे को आबाद करें इनपुट फ़ील्ड पर फोकस कैसे सेट करना है? जावास्क्रिप्ट एक नई विंडो में खुला है, नहीं टैब डेटा फ्रेम में "रैंक" कॉलम जोड़ें मैं C ++ में सीएसवी फ़ाइल डेटा कैसे पढ़ सकता हूं और हेरफेर कर सकता हूं? बैकस्लैश वर्ण (\\) क्या है? अपाचे के साथ वेबसाइट छवि कैशिंग कैसे एक UIView करने के लिए एक स्पर्श घटना जोड़ने के लिए? मैट्रिक्स के ब्लॉक-विकर्ण बाइंडिंग सी ++ में नए ऑपरेटर के साथ मेमोरी कैसे आरंभ करें?

किसी फ़ोल्डर से एक छवि से JLabel में आइकन कैसे सेट करें?

जब भी JComboBox से एक आइटम का चयन किया जाता है तो मैं छवियों के एक फ़ोल्डर से JLabel को एक आइकन सेट करने का प्रयास कर रहा हूं JComboBox में आइटम का नाम और फ़ोल्डर में छवियों का नाम समान है। इसलिए जब भी आइटम JComboBox से चुना जाता है, इसी नाम के साथ संबंधित छवि को जेएलैबल के आइकन के रूप में सेट किया जाना चाहिए। मैं ऐसा कुछ करने की कोशिश कर रहा हूं

private void cmb_movieselectPopupMenuWillBecomeInvisible(javax.swing.event.PopupMenuEvent evt){ updateLabel(cmb_moviename.getSelectedItem().toString()); } protected void updateLabel(String name) { ImageIcon icon = createImageIcon("C:\\Users\\xerof_000\\Pictures\\tmspictures\\" + name + ".jpg"); if(icon != null){ Image img = icon.getImage(); Image newimg = img.getScaledInstance(lbl_pic.getWidth(), lbl_pic.getHeight(), java.awt.Image.SCALE_SMOOTH); icon = new ImageIcon(newimg); lbl_pic.setIcon(icon); lbl_pic.setText(null); } else{ lbl_pic.setText("Image not found"); lbl_pic.setIcon(null); } } protected static ImageIcon createImageIcon(String path) { URL imgURL; imgURL = NowShowing.class.getResource(path); if (imgURL != null) { return new ImageIcon(imgURL); } else { return null; } } 

मैंने सोचा था कि समस्या "सी: \ प्रयोक्ता \ xerof_000 \ चित्र \ tmspictures \" में है "मैं" सी: / प्रयोक्ता / xerof_000 / चित्र / tmspictures / "का उपयोग करने की कोशिश की, लेकिन वह भी काम नहीं कर रहा था। और जो भी मैं करता हूं वह केवल जेएलैबल पर "छवि नहीं मिली" दिखाती है

Solutions Collecting From Web of "किसी फ़ोल्डर से एक छवि से JLabel में आइकन कैसे सेट करें?"

यह मेरी निर्देशिका संरचना है:

  packageexample | ------------------------------------------- | | | build(folder) src(folder) manifest.txt | | swing(package) ComboExample.java | imagetest(subpackage) | ComboExample.class + related .class files 

यह ComboExample.java फ़ाइल की सामग्री है:

 package swing.imagetest; import java.awt.*; import java.awt.event.*; import java.net.*; import javax.swing.*;  public class ComboExample { private String[] data = new String[]{ "geek0", "geek1", "geek2", "geek3", "geek4" }; private String MESSAGE = "No Image to display yet..."; private JLabel imageLabel; private JComboBox cBox; private ActionListener comboActions = new ActionListener() { @Override public void actionPerformed(ActionEvent ae) { JComboBox combo = (JComboBox) ae.getSource(); ImageIcon image = new ImageIcon( getClass().getResource( "/" + combo.getSelectedItem() + ".gif")); if (image != null) { imageLabel.setIcon(image); imageLabel.setText(""); } else { imageLabel.setText(MESSAGE); } }  }; private void displayGUI() { JFrame frame = new JFrame("Combo Example"); frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); JPanel contentPane = new JPanel(); imageLabel = new JLabel(MESSAGE, JLabel.CENTER); cBox = new JComboBox(data); cBox.addActionListener(comboActions); contentPane.add(imageLabel); contentPane.add(cBox); frame.setContentPane(contentPane); frame.pack(); frame.setLocationByPlatform(true); frame.setVisible(true); } public static void main(String... args) { EventQueue.invokeLater(new Runnable() { @Override public void run() { new ComboExample().displayGUI(); } }); } } 

अब संकलन:

संकलित करने के लिए मैंने यह किया:

 Gagandeep Bali@LAPTOP ~/c/Mine/JAVA/J2SE/src/packageexample $ javac -d build src/*.java 

मैनिफ़ेस्ट फ़ाइल की सामग्री:

यहां छवि विवरण दर्ज करें

जार फ़ाइल निर्माण:

 Gagandeep Bali@LAPTOP ~/c/Mine/JAVA/J2SE/src/packageexample $ cd build Gagandeep Bali@LAPTOP ~/c/Mine/JAVA/J2SE/src/packageexample/build $ jar -cfm imagecombo.jar ../manifest.txt * 

अब इस JAR File को इन चित्रों वाले किसी भी स्थान पर ले जाएं ( geek0.gif , geek1.gif , geek2.gif , geek3.gif तथा geek4.gif ), और JAR File चलाने, और परिणाम देखें 🙂

Icons का उपयोग कैसे करें में चर्चा के getResource() , getResource() पद्धति को आपके प्रोग्राम के JAR फ़ाइल में छवि ढूंढने की उम्मीद है। आपको अपने प्रोजेक्ट में छवि को स्थानांतरित करने की आवश्यकता होगी। IconDemo एक पूर्ण उदाहरण है

चूंकि आप जेएलैबल का उपयोग करते हैं, आप HTML टैग का सरल उपयोग कर सकते हैं, सिर्फ <html> के साथ लेबल पाठ शुरू करें और यात्रा के मामले में लेबल में एचटीएमएल टैग का इस्तेमाल करें: <img src = filepth \ imagefile.jpg> यू का उपयोग कर सकते हैं बदलने के लिए : )। मुस्कान आइकन के साथ

  /* Create an Image File whose size is 700 x 472 (pixels) in any image editor. Here Image was created using MS - Paint. Make sure that the Image File and the main file are in the same folder. The size of the JFrame should be set to 700 x 472 (pixels) in the program. Set the JLabel's IconImage. Add the JLabel to the JFrame. Set JFrame properties. Display JFrame. ------------------------------------------------------------------------------ label.setIcon(getClass().getResources(String name)); label.setIcon(new ImageIcon(String file)); These 2 methods, don't always work with us. So, we create a method "getImageIcon(File f)" that returns a new ImageIcon Object, everytime a new File Object is passed to it. */ import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JButton; import java.awt.Image; import javax.imageio.ImageIO; import java.io.File; import java.io.IOException; import javax.swing.ImageIcon; import static javax.swing.WindowConstants.*; public class ImageDemo { JFrame frame = new JFrame(); //initialized JLabel label = new JLabel(); //initialized JButton button = new JButton(); //initialized ImageIcon ii; //not initialized public void displayImage() { //Layout Type: Null Layout. label.setIcon(getImageIcon(new File("print.png"))); button.setBounds(150,150,358,66); //Note that sizes of the Image and Button are same. button.setIcon(getImageIcon(new File("Button.png"))); label.add(button); //add the button to the label frame.add(label); frame.setBounds(300, 50, 700, 472); //(300 x 50 = HorizontalAlignment x VerticalAlignment) //(700 x 472 = Width x Height) frame.setTitle("Image Demo"); frame.setDefaultCloseOperation(EXIT_ON_CLOSE); //WindowConstants.EXIT_ON_CLOSE frame.setVisible(true); } public ImageIcon getImageIcon(File f) { try { Image im = ImageIO.read(f); ii = new ImageIcon(im); } catch(IOException i) { i.printStackTrace(); } finally { return ii; } } public static void main(String[] args) { ImageDemo id = new ImageDemo(); id.displayImage(); } }