Java : GUI, 메뉴 만들기
메뉴 아이콘, 서브메뉴, 체크, 라디오버튼 만드는 자바 코드입니다.
결과창입니다.
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import javax.swing.ImageIcon;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.JTextField;
public class ManuBarTest extends JFrame {
JTextField tf;
public ManuBarTest() {
JMenuBar menuBar = new JMenuBar(); //메뉴바 생성
JMenu menu1 = new JMenu("File"); //메뉴 생성
JMenu menu2 = new JMenu("Edit");
menuBar.add(menu1);
menuBar.add(menu2);
JMenuItem menuItem = null; //서브메뉴
//메뉴1("File")의 서브메뉴 생성 및 추가, 메뉴선택 리스너
menuItem = new JMenuItem("New");
menuItem.addActionListener(menuItemListener);
menuItem.setToolTipText("새로만들기를 합니다.");
menu1.add(menuItem);
//단축키 지정
menuItem = new JMenuItem("Open",KeyEvent.VK_O); //O밑에 밑줄 및 키이벤트 등록
menuItem.addActionListener(menuItemListener);
menu1.add(menuItem);
menuItem = new JMenuItem("Save");
menuItem.setIcon(new ImageIcon("images/edit.png"));//아이콘 16x16
menuItem.addActionListener(menuItemListener);
menu1.add(menuItem);
//서브메뉴
JMenu subMenu = new JMenu("sub menu");
menuItem = new JMenuItem("sub1");
menuItem.addActionListener(menuItemListener);
subMenu.add(menuItem);
menuItem = new JMenuItem("sub2");
menuItem.addActionListener(menuItemListener);
subMenu.add(menuItem);
menu1.add(subMenu);
//Menu2("Edit")의 서브메뉴 만들기
JCheckBoxMenuItem checkBoxMenuItem = new JCheckBoxMenuItem("Ruler");
checkBoxMenuItem.addActionListener(menuItemListener);
checkBoxMenuItem.setToolTipText("눈금자를 보이게함");//툴팁
menu2.add(checkBoxMenuItem);
menu2.addSeparator();//구분선
//라디오 버튼
JRadioButtonMenuItem radioButtonMenuItem = new JRadioButtonMenuItem("Ediable");
radioButtonMenuItem.addActionListener(menuItemListener);
menu2.add(radioButtonMenuItem);
//JFrame에 메뉴바 설정
setJMenuBar(menuBar);
//메뉴 선택시의 결과 출력용 JTextField
tf = new JTextField();
tf.setToolTipText("선택한 결과가 출력됩니다.");
add(tf,BorderLayout.SOUTH);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setBounds(200,300,300,200);
setAlwaysOnTop(true);
setTitle("Menu Test");
setVisible(true);
}
ActionListener menuItemListener = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
tf.setText(e.getActionCommand()+"를 선택함.");
}
};
public static void main(String[] args) {
new ManuBarTest();
}
}
'Java Programming' 카테고리의 다른 글
Java : GUI, 네트워크(1:1 채팅 프로그램 만들기) (0) | 2018.11.22 |
---|---|
Java : GUI 회원 명단 추가삭제 프로그램(Table 등) (0) | 2018.11.21 |
Java : GUI, 리스트뷰(List View), 클릭한 이미지만 보이게 하기 (1) | 2018.11.21 |
Java : GUI, 체크박스(Check Box), Radio 버튼, ComboBox 만들기 (0) | 2018.11.20 |
Java : Swing 버튼과 이미지 띄우기 (0) | 2018.11.19 |