This section contains the detail about Java Swing's JButton & ImageIcon.
Working with JButton & ImageIcon
The functionality of a push button is provided by JButton class. we can add an icon, a string or both with the push button. It's constructors are given below :
JButton(Icon i) : Add an Icon as button.
JButton(String s) : Associate a String with Button.
JButton(String s, Icon i) : Add both Icon and String with button
Example :
In this Example, We are displaying four push buttons and a text field . Each button displays an icon that represents the flag of a country. When button is pressed , the name of that country is displayed in the text field.
package corejava; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; public class SwingButtonDemo { public static void main(String[] a) { JFrame f = new JFrame(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.add(new ButtonDemo()); f.setSize(550, 200); f.setVisible(true); } } class ButtonDemo extends JPanel implements ActionListener { JTextField jtf; public ButtonDemo() { try { makeGUI(); } catch (Exception exc) { System.out.println("Can't create because of " + exc); } } private void makeGUI() { setLayout(new FlowLayout()); ImageIcon Australia = new ImageIcon( "E:/ankit_tutorial/java/Flags/Australia.jpg"); JButton jb = new JButton(Australia); jb.setActionCommand("Australia"); jb.addActionListener(this); add(jb); ImageIcon India = new ImageIcon( "E:/ankit_tutorial/java/Flags/india.jpeg"); jb = new JButton(India); jb.setActionCommand("India"); jb.addActionListener(this); add(jb); ImageIcon srilanka = new ImageIcon( "E:/ankit_tutorial/java/Flags/srilanka.gif"); jb = new JButton(srilanka); jb.setActionCommand("Srilanka"); jb.addActionListener(this); add(jb); ImageIcon UK = new ImageIcon("E:/ankit_tutorial/java/Flags/UK.jpg"); jb = new JButton(UK); jb.setActionCommand("UK"); jb.addActionListener(this); add(jb); jtf = new JTextField(15); add(jtf); } public void actionPerformed(ActionEvent ae) { jtf.setText(ae.getActionCommand()); } }
[ 0 ] Comments