728x90
반응형
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class Main {
public static void main(String[] args) {
Frame frame = new Frame();
frame.setBounds(100, 100, 600, 500);
// 텍스트 영역 배치
TextArea ta = new TextArea();
frame.add(ta, "Center");
// 메뉴 설정
MenuBar mbar = new MenuBar();
Menu menu1 = new Menu("파일");
MenuItem mitem1 = new MenuItem("새파일");
MenuItem mitem2 = new MenuItem("열기");
MenuItem mitem3 = new MenuItem("저장");
MenuItem mitem4 = new MenuItem("종료");
menu1.add(mitem1);
menu1.add(mitem2);
menu1.add(mitem3);
menu1.add(mitem4);
mbar.add(menu1);
frame.setMenuBar(mbar);
Menu menu2 = new Menu("편집");
MenuItem mitem5 = new MenuItem("실행 취소");
MenuItem mitem6 = new MenuItem("잘라 내기");
MenuItem mitem7 = new MenuItem("복사");
MenuItem mitem8 = new MenuItem("붙혀넣기");
menu2.add(mitem5);
menu2.add(mitem6);
menu2.add(mitem7);
menu2.add(mitem8);
mbar.add(menu2);
frame.setMenuBar(mbar);
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
super.windowClosing(e);
System.exit(0);
}
});
// 메뉴 입력 처리기
class MyMenuListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
String cmdStr = e.getActionCommand();
System.out.println(cmdStr);
}
}
MyMenuListener mml1 = new MyMenuListener();
mitem1.addActionListener(mml1);
mitem2.addActionListener(mml1);
mitem3.addActionListener(mml1);
mitem4.addActionListener(mml1);
MyMenuListener mml2 = new MyMenuListener();
mitem5.addActionListener(mml2);
mitem6.addActionListener(mml2);
mitem7.addActionListener(mml2);
mitem8.addActionListener(mml2);
}
}
728x90
반응형
'즐거운프로그래밍' 카테고리의 다른 글
[자바] Canvas의 이해와 활용(컬러 적용하기) (0) | 2023.10.24 |
---|---|
[자바] Canvas의 이해와 활용(그래픽 처리 작업) (0) | 2023.10.24 |
[자바] 배치 관리자(GridLayout 예제) (0) | 2023.10.24 |
[자바] 컴포넌트의 배치(전자계산기 만들기) (0) | 2023.10.24 |
[자바] AWT 이벤트와 리스너의 종류 (0) | 2023.10.24 |