728x90
반응형
* 스윙에 메뉴를 만들 수 있다.
1) JMenuBar
메뉴바의 기능을 구현한 클래스이다. 이곳에 JMenu로 만든 메뉴를 여러 개 단다.
2) JMenu
하나의 메뉴를 구현한 클래스이다. 이곳에 JMenu으로 만든 메뉴아이템을 여러 개 단다.
3) JMenuItem
하나의 메뉴아이템을 구현한 클래스이다.
* 메뉴를 만드는 단계별 과정
1) JMenuBar 컴포넌트를 생성하여 메뉴바를 만든다.
JMenuBar mb = new JMenuBar();
2) JMenu 컴포넌트를 생성하여 메뉴를 만들고 메뉴바에 붙인다.
메뉴 이름은 문자열로서 JMenu의 생성자에 전달한다.
메뉴를 메뉴바에 붙일 때는 JMenuBar의 add() 메소드를 이용한다.
// "File"메뉴를 만들어 메뉴바에 붙이는 Example
JMenu fileMenu = new JMenu("File");
mb.add(fileMenu);
3) JMenuItem을 이용하여 메뉴아이템을 생성하고 메뉴에 붙인다.
메뉴아이템의 이름은 문자열로서 JMenuItem의 생성자에 전달한다.
메뉴 아이템을 메뉴에 붙일 때는 JMenu의 add()메소드를 이용한다.
// fileMenu에 메뉴아이템을 생성하여 붙이는 Example
fileMenu.add(new JmenuItem("New"));
fileMenu.add(new JmenuItem("Open"));
fileMenu.addSeparator(); // Open 메뉴아이템 다음에 분리선이 삽입된다.
fileMenu.add(new JmenuItem("Save"));
fileMenu.add(new JmenuItem("SaveAs));
4) 메뉴바를 프레임에 붙인다.
// JFrame의 setMenuBar() 메소드를 이용하여 메뉴바를 붙이는 Example
frame.setJMenuBar(mb);
* 일반적으로 메뉴아이템은 사용자로부터 작업 명령을 받는 데 사용된다.
그러므로 스윙에서 사용자가 메뉴아이템을 선택하면 Action 이벤트가 발생한다.
// 메뉴아이템에 Action 이벤트를 처리하기 위해 ActionListener를 등록하는 Example
JMenuItem item = new JMenuItem("Color");
item.addActionListener(new ColorActionListener());
fileMenu.add(item);
class ColorActionListener implements ActionListener{
public void actionPerformed(ActionEvent e){
... // 사용자가 Color 메뉴아이템을 선택하는 경우 처리할 작업 구현
}
}
반응형
'자바공부' 카테고리의 다른 글
자바 고급 스윙컴포넌트 툴팁, ToolTip (0) | 2022.08.10 |
---|---|
자바 고급 스윙 컴포넌트, 툴바 ToolBar (0) | 2022.08.10 |
자바 스레드 동기화(Thread Synchronization) (0) | 2022.08.10 |
명품자바프로그래밍13장 요약, 스레드와 멀티테스킹 (0) | 2022.08.03 |
자바 스레드 종료, 명품자바프로그래밍13장 (0) | 2022.08.03 |