TODAY : / TOTAL :

[Java] GUI 프로그래밍 3 - 버튼

  • Share this:
반응형

 
import java.awt.*;
import javax.swing.*;  // 컨트롤 박스 == swing

import java.awt.event.*;

public class main {
 public static void main(String[] args)
 {
  JFrame frame = new JFrame("컨트롤배치");
  frame.setLocation(500,400);
  frame.setPreferredSize(new Dimension(200,120));
  Container contentPane = frame.getContentPane();
  JPanel panel1 = new JPanel(); // 이름 성적 입력 (패널 1)
  JPanel panel2 = new JPanel(); // 결과 출력 (패널 2)
  JPanel panel3 = new JPanel(); // 버튼 (패널 3)
  JPanel panel4 = new JPanel(); // 라벨 출력용
  
  // 패널1 지정 (그리드 레이아웃 형식)
  panel1.setLayout(new GridLayout(2,2));
  JTextField textName = new JTextField();
  JTextField textGrade = new JTextField();
  
  // 패널에 순서대로 추가
  panel1.add(new JLabel("이름 : "));
  panel1.add(textName);
  panel1.add(new JLabel("성적 : "));
  panel1.add(textGrade);
  
  // 생성된 패널을 contentPane BorderLayout WEST 지점에 추가
  contentPane.add(panel1,BorderLayout.WEST);
  
  
  // 패널2 지정 (그리드 레이아웃 형식)
  panel2.setLayout(new GridLayout(2,1));
  JTextField textResult = new JTextField();
  
  // 패널에 순서대로 추가
  panel2.add(new JLabel("결과 :"));
  panel2.add(textResult);
  contentPane.add(panel2,BorderLayout.CENTER);
  
  
  // 패널3 지정 (그리드 레이아웃 형식)
  panel3.setLayout(new GridLayout(1,2));
  JButton buttonOK = new JButton("확인");
  JButton buttonCancel = new JButton("취소");
  
  // 패널에 순서대로 추가 (버튼 2개)
  panel3.add(buttonOK);
  panel3.add(buttonCancel);
  contentPane.add(panel3,BorderLayout.SOUTH);
  
  JLabel label = new JLabel(" ");
  contentPane.add(label, BorderLayout.NORTH);
  
  ActionListener listener = new listener(1,label);
  buttonOK.addActionListener(listener);
  
  ActionListener listener2 = new listener(2,label);
  buttonCancel.addActionListener(listener2);
  
  //X 버튼을 눌렀을때 명령 지정
  frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  frame.pack();
  frame.setVisible(true);
 }
}

 


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

public class listener implements ActionListener {
 int index;
 JLabel label;
 
 listener(int index, JLabel label)
 {
  this.index = index;
  this.label = label;
 }
 
 public void actionPerformed(ActionEvent e)
 {
  if(index == 1)
   label.setText("확인이 눌렸음.");
  if(index == 2)
   label.setText("취소가 눌렸음.");
 }
  
}



반응형

SEARCH

태그로 찾아보기