Explore Java

Be Social. Be Updated.

  • Stumble
  •   
  •   

Set Background Image to JMenuBar



This illustrates setting background image to JMenuBar. For this we need to paint an background image on JMenuBar. 1 main step is far from background image.






import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class MenuBarBackground extends JFrame
{
JMenuBar mbar;
JMenu menu;
public MenuBarBackground()
{
setTitle("MenuBar Background");
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);

mbar=new JMenuBar(){
public void paintComponent(Graphics g)
{
g.drawImage(Toolkit.getDefaultToolkit().getImage("F:/Wallpapers/violetpink.png"),0,0,this);
}
};

menu=new JMenu("Menu");
menu.setForeground(Color.white);
for(int i=1;i<=5;i++)
menu.add(new JMenuItem("MenuItem "+i));

mbar.add(menu);
setJMenuBar(mbar);
setSize(400,400);
}
public static void main(String args[])
{
new MenuBarBackground();
}
}

Output

Background Image for JMenuBar
Look at menubar background image

paintComponent(Graphics g): Takes java.awt.Graphics as parameter. This contains drawImage() method which takes java.awt.Image object, x,y axes and ImageObserver object. paint() is not used here because, if we use this, i could not see the Menu.

g.drawImage(Toolkit.getDefaultToolkit().getImage("F:/Wallpapers/violetpink.png"),0,0,this): Method of java.awt.Graphics class. java.awt.Toolkit is a class containing a static method getDefaultToolkit() which returns the object of that class only (java.awt.Toolkit). This class contains getImage() method which takes the path of the image file and returns the java.awt.Image object. My background image is located in F:\Wallpapers. You can notice / instead of \ this is because / is equal to \\ in Windows and similar operating systems. Next, 0,0 are the x,y co ordinates respectively. Try changing them, you'll notice the change. this represents current object which acts as ImageObserver.

In this way, we can set background image to JMenuBar easily in single step.

0 comments:

About This Blog

This blog contains Java Tutorials, Code Samples,demonstrating several concepts in Java. All the code samples are well tested by a team of experts and hence there will be no programmatical errors. We are seamlessly thriving in making the tutorials easier for beginners.

About the Author

was a software and technology enthusiast. He is a 12th grade student and a part time blogger with extreme love in Java programming.Follow him on Google+ and Twitter or befriend him on Facebook and also on