Re: Newbie Problem with Java Label



aspnetpal wrote:
Hi every1, I'm new to java and trying to learn it by doing it ...

The problem I'm having is that I'm trying to display an image (which
can only be displayed inside a label ... plz. correct me if I'm wrong).

Swing has many methods to display images (build in as setIcon(...) or you may override paintComponent(...)

http://www.google.com/search?hl=en&hs=n6j&client=firefox-a&rls=org.mozilla:en-US:official&q=how+to+display+image+in+java&spell=1


The label's text is displaying but not the picture. below is the code (it is same code from one of the samples from Sun's website)

Any help would be really appreciated.  Thanks


import java.awt.GridLayout;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

/*
 * SwingLabelDemo.java is a 1.4 application that needs one other file:
 *   images/middle.gif
 */
public class SwingLabelDemo extends JPanel {
    public SwingLabelDemo() {
        super(new GridLayout(3,1));  //3 rows, 1 column
        JLabel label1, label2, label3;

        ImageIcon icon = createImageIcon("images/mapImage1.gif",
                                         "a pretty but meaningless
splat");

// System.out.println(icon); **** I put this here to see what it is

// put another line
if(icon != null){
System.out.println("Icon: width = " + icon.getWidth() + ", height = " + icon.getHeight());
} else {
System.err.println("Icon is null");
}


grabing ...
        //Create the first label.
        label1 = new JLabel("Image and Text",
                            icon,
                            JLabel.CENTER);
        //Set the position of its text, relative to its icon:
        label1.setVerticalTextPosition(JLabel.BOTTOM);
        label1.setHorizontalTextPosition(JLabel.CENTER);
//		label1.setPreferredSize( new Dimension(45, 32 ) );

        //Create the other labels.
        label2 = new JLabel("Text-Only Label");
        label3 = new JLabel(icon);

        //Create tool tips, for the heck of it.
        label1.setToolTipText("A label containing both image and
text");
        label2.setToolTipText("A label containing only text");
        label3.setToolTipText("A label containing only an image");

        //Add the labels.
        add(label1);
        add(label2);
        add(label3);
    }

    /** Returns an ImageIcon, or null if the path was invalid. */
    protected static ImageIcon createImageIcon(String path,
                                               String description) {
        java.net.URL imgURL = SwingLabelDemo.class.getResource(path);
        if (imgURL != null) {
            return new ImageIcon(imgURL, description);
        } else {
            System.err.println("Couldn't find file: " + path);
            return null;
        }
    }

    /**
     * Create the GUI and show it.  For thread safety,
     * this method should be invoked from the
     * event-dispatching thread.
     */
    private static void createAndShowGUI() {
        //Make sure we have nice window decorations.
        JFrame.setDefaultLookAndFeelDecorated(true);

        //Create and set up the window.
        JFrame frame = new JFrame("SwingLabelDemo");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        //Create and set up the content pane.
        SwingLabelDemo newContentPane = new SwingLabelDemo();
        newContentPane.setOpaque(true); //content panes must be opaque

why content pane MUST be opaque?

        frame.setContentPane(newContentPane);

        //Display the window.
        frame.pack();
        frame.setVisible(true);
    }

    public static void main(String[] args) {
        //Schedule a job for the event-dispatching thread:
        //creating and showing this application's GUI.
        javax.swing.SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                createAndShowGUI();
            }
        });
    }
}

.



Relevant Pages

  • Ping Randy Birch?
    ... Recursive File Search for Single or Multiple File Types ... I'm forbidden to display it here by the notice in the code, ... I tried to put a "working" label on the form so I'd know I clicked ...
    (microsoft.public.vb.general.discussion)
  • Label will not display NEW records frm another (bound) form.
    ... When I add the name of a new individual in a, bound form, it will not display ... that person’s name in a label control of a second unbound form. ... try to add NEW entries that I the label control will not work/refresh. ... past Registrations. ...
    (microsoft.public.access.formscoding)
  • RE: Trouble displaying info from access db
    ... Is lblSubName the name or your label? ... not getting the Subject Code to display in the Label? ... Private Sub Form1_Load(ByVal sender As System.Object, ... Dim intRecordCount As Integer ...
    (microsoft.public.dotnet.framework.adonet)
  • Re: vb.net search network drive
    ... files to display what I have above. ... has something to do with how you test a String value... ... Why not just place a Label above your ListBox, ... String.Format("There are also whatever files waiting to be sent", ...
    (microsoft.public.dotnet.languages.vb)
  • RE: Sections in repeater
    ... Setting "display: ... Dim lblSection As Label ... If lastCity = c.City Then ...
    (microsoft.public.dotnet.framework.aspnet.webcontrols)