Aug 18, 2014

How to using JButton of SWING (JAVA)



SWING is GUI tool kit for JAVA.

You can using it. If you installing plug-in.

This post is JButton.

JButton is button of SWING.

If you executing swing, can see this picture.


There are 2 type button. (JButton and Button)

JButton is for SWING and  Button is for AWT.

I use JButton.

This is my sample source.


You can making Button likes this picture.

And look, left side!!

I checked 'Variable' and 'text'.

Variable is JButton's name.

You possible to change name.

And text is display text.

You can check right side.

Okay, go to java source.


  1. public class serverSWING implements ActionListener,ItemListener{
  2.     private JFrame frame;
  3.     private JTextField portNum;
  4.     private JButton btnServerOpen,btnClear,btnSend;
  5.     public static JEditorPane commText;
  6.     ServerSocket ss;
  7.     Socket socket;
  8.     InetAddress ia;
  9.     Thread server;
  10.     public static JButton btnServerClose;
  11.     public static boolean disconnected=true;
  12.     private JEditorPane sendText;
  13.     public static boolean echoEnable=false;
  14.     private JCheckBox checkEcho;
  15.     /**
  16.      * Launch the application.
  17.      */
  18.     public static void main(String[] args) {
  19.         EventQueue.invokeLater(new Runnable() {
  20.             public void run() {
  21.                 try {
  22.                     serverSWING window = new serverSWING();
  23.                     window.frame.setVisible(true);
  24.                 } catch (Exception e) {
  25.                     e.printStackTrace();
  26.                 }
  27.             }
  28.         });
  29.     }


Line 1 :  I implement 'ActionListener'. This similar Android's 'onClickListener'.

Line 5 : I declared JButton.

Line 19 : Starting SWING.



  1. /**
  2.      * Create the application.
  3.      */
  4.     public serverSWING() {
  5.         initialize();
  6.     }
  7.     /**
  8.      * Initialize the contents of the frame.
  9.      */
  10.     private void initialize() {
  11.         frame = new JFrame();
  12.         frame.setBounds(100100640480);
  13.         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  14.         frame.getContentPane().setLayout(null);
  15.        
  16.         portNum = new JTextField();
  17.         portNum.setText("5000");
  18.         portNum.setBounds(549105921);
  19.         frame.getContentPane().add(portNum);
  20.         portNum.setColumns(10);
  21.        
  22.         JLabel lblPort = new JLabel("PORT");
  23.         lblPort.setBounds(503134415);
  24.         frame.getContentPane().add(lblPort);
  25.        
  26.         btnServerOpen = new JButton("SERVER OPEN");
  27.         btnServerOpen.addActionListener(this);
  28.            
  29.         btnServerOpen.setBounds(4934111923);
  30.         frame.getContentPane().add(btnServerOpen);
  31.        
  32.         commText = new JEditorPane();
  33.         commText.setText("Plz, type port and press connect button.");
  34.         commText.setBounds(1210471389);
  35.         frame.getContentPane().add(commText);
  36.        
  37.         btnServerClose = new JButton("SERVER Close");
  38.         btnServerClose.addActionListener(this);
  39.         btnServerClose.setBounds(4937411923);
  40.         frame.getContentPane().add(btnServerClose);
  41.        
  42.         btnClear = new JButton("Clear");
  43.         btnClear.addActionListener(this);
  44.         btnClear.setBounds(49310711923);
  45.         frame.getContentPane().add(btnClear);
  46.        
  47.         sendText = new JEditorPane();
  48.         sendText.setBounds(1240947121);
  49.         frame.getContentPane().add(sendText);
  50.        
  51.         btnSend = new JButton("Send");
  52.         btnSend.addActionListener(this);
  53.        
  54.         btnSend.setBounds(49340711923);
  55.         frame.getContentPane().add(btnSend);
  56.        
  57.         checkEcho = new JCheckBox("Echo Mode");
  58.         checkEcho.setBounds(49337511923);
  59.         frame.getContentPane().add(checkEcho);
  60.         checkEcho.addItemListener(this);
  61.        
  62.     }

Line 5 : initailize to serverSWING.

Line 27~31 : GUI's position, registration listener and make button.

This auto making source about actionListener.

  1.     @Override
  2.     public void actionPerformed(ActionEvent e) {
  3.    
  4.         }

Add code. 

  1.     @Override
  2.     public void actionPerformed(ActionEvent e) {
  3.         if(e.getSource()==btnServerOpen){
  4.             String getPort=portNum.getText();
  5.             if(!getPort.isEmpty()){
  6.                
  7.                 int port=Integer.parseInt(getPort);
  8.                
  9.                 portOpen(port);
  10.                
  11.                
  12.             }else{
  13.                 commText.setText("Not found PORT number");
  14.             }
  15.            
  16.         }
  17.     }

Line 3 : 'e.getSource()== btnServerOpen' similar android's 'e.getId()'.

but 'getID()' is integer. So android possible to using 'switch-case'. 


No comments:

Post a Comment