How to assign Image to JButton in Java Swings.

How to assign the image on JButton and can we set the area for the image.
searchsanjaysharmaAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

krakatoaCommented:
Use JButton(Icon icon) constructor.
0
searchsanjaysharmaAuthor Commented:
any source code
0
krakatoaCommented:
Well, just this or similar really ...

JButton jb = new JButton(new ImageIcon("MyJPEG.jpg"));

Open in new window



. . .  just ensure the right path to the image.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
krakatoaCommented:
Lol -just saw that you also asked for the area of the image to be set.

Something on these lines *might* help, although you'd need to work on controlling the button size, and making the appropriate changes to the JPEG reference of course, and the relative sizes you are looking for, but here is a basic demo class :

import javax.swing.*;
import java.awt.*;
import java.awt.image.*;

 class PictureButton extends JFrame {

    public static void main(String[] args){

	PictureButton pb = new PictureButton();

	pb.setLayout(new BorderLayout());

	JButton jb = new JButton();
	
	pb.setSize(new Dimension(500,400));

	jb.setIcon(new ImageIcon(new ImageIcon("C:/persephone/Kore.jpg").getImage().getScaledInstance(60,60,Image.SCALE_SMOOTH)));

	pb.getContentPane().add(jb,BorderLayout.CENTER);

	pb.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

	pb.setVisible(true);

     }

 }

Open in new window

0
searchsanjaysharmaAuthor Commented:
tx
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Java

From novice to tech pro — start learning today.