Menu — 메뉴 컴포넌트

Menu 객체는 메뉴 바에서 펼쳐지는 풀다운 메뉴 컴포넌트예요. 메뉴는 선택적으로 분리형(tear-off) 메뉴가 될 수 있어요. 분리형 메뉴는 열어서 부모 메뉴 바나 메뉴에서 떼어내 드래그할 수 있으며, 마우스 버튼을 놓은 뒤에도 화면에 남아 있어요.

출처: Java API Reference

본문

public class Menu extends MenuItem implements MenuContainer, Accessible

분리형 메뉴의 메커니즘은 플랫폼에 따라 달라요. 분리형 메뉴를 지원하지 않는 플랫폼에서는 분리 속성이 무시돼요.

메뉴의 각 항목은 MenuItem 클래스에 속해야 해요. MenuItem, 서브메뉴(Menu의 인스턴스), 또는 체크 박스(CheckboxMenuItem의 인스턴스)일 수 있어요.

생성자

  • Menu() — 빈 라벨의 새 메뉴를 만들어요. 분리형 메뉴가 아니에요.
  • Menu(String label) — 지정한 라벨의 새 메뉴를 만들어요.
  • Menu(String label, boolean tearOff) — 분리 가능 여부를 지정해요. AWT 구현이 분리형 메뉴를 지원하지 않으면 조용히 무시돼요.

헤드리스 환경에서는 HeadlessException을 던져요.

주요 메서드

  • add(MenuItem mi) — 메뉴 항목을 추가해요.
  • insert(MenuItem mi, int index) — 지정한 인덱스에 항목을 삽입해요.
  • remove(int index) / remove(MenuComponent item) — 항목을 제거해요.
  • getItemCount() — 항목 수를 반환해요.
  • isTearOff() — 분리형 메뉴인지 확인해요.

메뉴를 실제 화면에 붙이려면 MenuBar나 다른 메뉴/팝업 메뉴에 추가해야 해요.

더 알아보기