Results 1 to 3 of 3
  1. #1
    Soda is offline Member
    Join Date
    Dec 2007
    Posts
    15
    Rep Power
    0

    Default How to set an Icon in a Label?

    I cant seem to put images in a label. I have tried a lot of codes and still cant get it.... Any tips?

    Here are some codes:

    Code : lName.setIcon("./IMG/name_icon.jpg");

    Error : setIcon(javax.swing.Icon) in javax.swing.JLabel cannot be applied to (java.lang.String)


    Code : Image icon = createImageIcon("./IMG/name_icon.jpg");
    lName = new JLabel(icon);

    Error : cannot find symbol method createImageIcon(java.lang.String)
    cannot find symbol constructor JLabel(java.awt.Image)

  2. #2
    hardwired's Avatar
    hardwired is offline Senior Member
    Join Date
    Jul 2007
    Posts
    1,576
    Rep Power
    9

    Default Using ImageIcon

    Java Code:
    Code : lName.setIcon("./IMG/name_icon.jpg");
    
    Error : setIcon(javax.swing.Icon) in javax.swing.JLabel cannot
    be applied to (java.lang.String)
    JLabel.setIcon method takes the interface type Icon which is implemented by the ImageIcon class. You find this by looking up the setIcon method in the JLabel class api. Follow the link (in the arguemnt) to the Icon interface, note that ImageIcon is an implementing class, follow the link to the ImageIcon api and check out the class constructors: there are 9 in my j2se 1.5 javadocs.
    So try something like:
    Java Code:
    ImageIcon icon = new ImageIcon("IMG/name_icon.jpg");
    System.out.println("icon = " + icon); // test for null
    lName.setIcon(icon);
    // or
    URL url = getClass().getResource("IMG/name_icon.jpg");
    System.out.println("url = " + url);
    iName.setIcon(new ImageIcon(url));
    // or
    lName.setIcon(new ImageIcon(new File("IMG/name_icon.jpg"));
    Java Code:
    Code : Image icon = createImageIcon("./IMG/name_icon.jpg");
    lName = new JLabel(icon);
    
    Error : cannot find symbol method createImageIcon(java.lang.String)
    cannot find symbol constructor JLabel(java.awt.Image)
    Check the argument type for the createImageIcon method you are calling. The compiler says it does not take a String argument.
    Also, the type of "icon" is wrong according to the compiler. You have declared the "icon" variable as type Image. This type declaration must match the return type declaration of the createImageIcon method you are calling. From the name of the method I would suspect/infer that its return type is ImageIcon, ie, it may have a method signature like this:
    Java Code:
    public ImageIcon createImageIcon(args_of_some_type) {
        ImageIcon icon = new ImageIcon(some_args);
        ...
        return icon;
    }
    // Therefore:
    ImageIcon icon = createImageIcon(args);
    ImageIcon is an older (j2se 1.2) way of loading images and does not report trouble. Its api and the underlying MediaTracker api provide methods you can use to ask about loading success. The newer way to load images (j2se 1.4+) is ImageIO.read methods. See api for options. It does report trouble.

  3. #3
    Soda is offline Member
    Join Date
    Dec 2007
    Posts
    15
    Rep Power
    0

Similar Threads

  1. Getting disk label
    By Java Tip in forum Java Tip
    Replies: 0
    Last Post: 02-05-2008, 10:07 AM
  2. Example of SWT Label
    By Java Tip in forum Java Tip
    Replies: 0
    Last Post: 01-09-2008, 01:02 PM
  3. Using java.awt.Label
    By Java Tip in forum Java Tip
    Replies: 0
    Last Post: 01-02-2008, 07:28 PM
  4. Label image Question
    By Soda in forum New To Java
    Replies: 3
    Last Post: 12-10-2007, 04:38 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •