앞의 장에서 배운 AcitonListener를 통하여 어떤 글자를 가지고 오며 지우는 기능이 있는 화면을 구현하겠습니다.
복사와 지우기 기능이라고 생각하면 됩니다.
import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;
import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField;
public class G3 extends JFrame implements ActionListener{ //2. implements를 해야 override 가능(중요)
JButton b1=new JButton("ctrlc"); JButton b2=new JButton("clean"); JPanel p1=new JPanel(); JTextField t1=new JTextField(30); JLabel l1=new JLabel("이 글자를 버튼을 누르면 text에 붙이시오");
public G3() {
p1.setLayout(new GridLayout(2,2)); add(p1);
b1.addActionListener(this); b2.addActionListener(this); //1. 위를 작성하고 앞부분 클릭하면 let implements가 있는 클릭하면 위쪽의 jframe옆에 자동생성됨
p1.add(l1); p1.add(t1); p1.add(b1); p1.add(b2);
setLocationRelativeTo(null); setSize(500,500); setResizable(false); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
} public static void main(String args[]) { G3 test = new G3(); }
@Override //3. 위쪽 부분의 implements를 클릭하면 add implements 를 통하여 자동생성가능 //getAcitonCommand는 component의 text를 가져오는 기능 //getSource는 component의 변수를 가지고옴 public void actionPerformed(ActionEvent e) { String a=e.getActionCommand(); if(a=="ctrlc") { t1.setText(l1.getText()); } else if(a=="clean") { t1.setText(""); } else { t1.setText("알수없는 오류"); }
} } |
<결과물>
ctrlc 버튼 누른 결과 |
clean 버튼 누른 결과 |
자료가 마음에 드셨다면 자주 찾아주세요^^ 글 올리는데 힘이됩니다.
'JAVA-AWT > ActionListener' 카테고리의 다른 글
JAVA-AWT-ActionListener03(한 글자 지우기/ backspace 기능) (0) | 2018.06.20 |
---|---|
JAVA-AWT-ActionListener (0) | 2018.06.20 |