• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Problems dispaying icon

 
Dean Reedy
Ranch Hand
Posts: 89
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have a package called divelog, with a subdirectory of images, with a file diveflag.gif
I am trying to load a image into a label by:
jl = new JLabel("Java(TM) Technology Dive Log", new ImageIcon("images/diveflag.gif"), JLabel.CENTER);

When I run the application no image appears. Any ideas?
Thanks,
Dean
 
Dean Reedy
Ranch Hand
Posts: 89
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I added the full path from where the JAVA machine was running and it worked. I thought you only had to path it from where the class files exists. Does anyoine know the rules?
thanks,
Dean
 
Nathan Pruett
Bartender
Posts: 4121
IntelliJ IDE Java Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I think Java uses the CLASSPATH to search for images also... is the directory directly above /images on the classpath?
 
Jaunty John
Greenhorn
Posts: 21
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The '/images' subdirectory must be a subdirectory of the directory where the code is located that calls for the image. For instance, if the code for divelog.java is located at 'C:\MyApps\divelog', then the '/images' sub must be located at 'C:\MyApps\divelog\images'. The CLASSPATH knows where to find it because it starts at the current directory, and your code gives it a relative path to the *.gif file, 'new ImageIcon("images/diveflag.gif"), JLabel.CENTER);', (the part in the double quotes).
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic