The simple example to insert an image to background of frame in java
Syntax :
ImageIcon("Path-to-imagefile//image_name.its-extension")));
Example :
- import javax.swing.*;
- import java.awt.*;
- import java.awt.event.*;
- class BackgroundImageJFrame extends JFrame
- {
- JButton b1;
- JLabel l1;
- public BackgroundImageJFrame()
- {
- setTitle("Background Color for JFrame");
- setLocationRelativeTo(null);
- setDefaultCloseOperation(EXIT_ON_CLOSE);
- setVisible(true);
- setContentPane(new JLabel(new ImageIcon("C:\\Users\\Public\\Pictures\\Sample Pictures\\Penguins.jpg")));
- setLayout(new FlowLayout());
- l1=new JLabel("Here is a button");
- b1=new JButton("I am a button");
- add(l1);
- add(b1);
- setSize(500,500);
- }
- public static void main(String args[])
- {
- new BackgroundImageJFrame();
- }
- }
Description :
Step 1 - 3: All files imported
Step 4: Here class name extends JFrame. This means all the properties and methods of class "JFrame" can be accessed in this class.
Step 6: Object of class JButton is defined to get actual button on GUI.
Step 7: Object of class JLabel is defined to get actual text on GUI.
Step 8: Constructor starts here.
Step 10:Set title to frame
Step 11:Set frame size.Note here image size is not being set only the size of frame is set.
Step 12:This line helps java frame to appear at the center of the screen.
Step 13:Closes on exit.
Step 14:To make the frame appear.You can also disappear this frame depending on your requirements.Simply write setVisible(false).
Step 15:In this step make sure firstly to give proper path where the image file is located.Secondly while copying the path make sure there is '\\' and not single '\'.
Step 16:One of the layouts is set here.Details about the layouts will be covered in different section.
Step 17:JLabel object is created and text to be displayed is written in double quotes.
Step 18:JButton object is created and text to be displayed on button is written in double quotes.
Step 19: Adds created objects to frame.
Step 22 - 24: In main function object of class is created using "new" keyword