다음을 통해 공유


Menu 요소

하나 이상의 메뉴 항목을 정의합니다. 이러한 여섯 종류의 메뉴입니다: 문맥, 메뉴, MenuController, MenuControllerLatched, 도구 모음 및 ToolWindowToolbar.

<Menu guid=”guidMyCommandSet” id=”MyCommand” priority=”0x100” type=”button”>
  <Parent>... </Parent>
  <CommandFlag>... </CommandFlag>
  <Strings>... </Strings>
</Menu>

특성 및 요소

다음 단원에서는 특성, 자식 요소 및 부모 요소에 대해 설명합니다.

특성

특성

설명

guid

필수 요소. GUID GUID/ID 명령 식별자입니다.

id

필수 요소. ID/ID GUID 명령 식별자입니다.

priority

선택적 요소. 메뉴 그룹에서 메뉴의 상대적인 위치를 지정 된 숫자 값입니다.

ToolbarPriorityInBand

선택적 요소. 창이 도킹 되어 있을 때 밴드에서 도구 모음의 상대 위치를 지정 된 숫자 값입니다.

type

선택적 요소. 요소의 종류를 지정 하는 열거형된 값입니다.

하지 않으면 기본 유형 메뉴입니다.

컨텍스트

사용자가 창을 마우스 오른쪽 단추로 클릭할 때 표시 되는 바로 가기 메뉴입니다. 바로 가기 메뉴는 다음과 같은 특징이 있습니다.

  • 메뉴의 바로 가기 메뉴로 표시 되는 경우 부모 및 우선 순위 필드를 사용 하지 않습니다.

  • 하위 메뉴 및 바로 가기 메뉴로도 사용할 수 있습니다. 이 경우 우선 순위와 그룹 ID 필드 고려 됩니다.

  • 항상 사용할 수 없습니다.

다음과 같은 경우에 바로 가기 메뉴가 표시 됩니다.

  • 호스팅하는 창에 표시 됩니다.

  • 마우스 처리기에 있는 VSPackage 창에서 마우스 오른쪽 클릭을 감지 하 고 명령을 처리 하는 메서드를 호출 합니다.

  • 호출 하 여 바로 가기 메뉴가 표시 되는 ShowContextMenu 메서드 (권장된 방법) 나의 ShowContextMenu 메서드.

메뉴

드롭 다운 메뉴를 제공합니다. 드롭다운 메뉴는 다음과 같은 특징이 있습니다.

  • 부모 정의에 사용 됩니다.

  • 부모 그룹 또는 그룹에는 Commandplacement가 있어야 합니다.

  • 다른 종류의 메뉴에 하위 메뉴를 사용할 수 있습니다.

  • 부모 메뉴 표시 될 때마다 자동으로 표시 됩니다.

  • 표시 되도록 VSPackage 코드 구현이 필요 하지 않습니다.

MenuController

도구 모음에서 일반적으로 사용 되는 분할 단추 드롭다운 메뉴를 제공 합니다. MenuController 메뉴는 다음과 같은 특징이 있습니다.

  • 또 다른 메뉴를 통해 부모 또는 Commandplacement에 포함 되어야 합니다.

  • 부모 정의에 사용 됩니다.

  • 모든 종류의 메뉴는 상위를 가질 수 있습니다.

  • 부모 메뉴 표시 될 때마다 자동으로 사용할 수 있습니다.

  • 표시 되는 메뉴를 확인 하려면 프로그래밍 방식으로 지원 하지 않아도 됩니다.

분할 단추 메뉴에서 명령은 메뉴 단추에 표시 됩니다. 다음 특성 중 하나 표시 되는 명령은 다음과 같습니다.

  • 이 명령이 여전히 표시 되 고 사용 하도록 설정 하는 경우에 사용 된 마지막 명령입니다.

  • 그의 첫 번째 표시 되는 명령입니다.

MenuControllerLatched

분할 단추 드롭다운 메뉴에 명령을 기본으로 선택 명령을 걸려 확인 된 것으로 표시 하 여 지정할 수 있습니다 제공 합니다.

걸쇠 (latched) 명령을 메뉴 선택, 일반적으로 확인 표시를 표시 하 여 표시 되는 명령이입니다. 명령에 OLECMDF_LATCHED 있는 경우 걸려 확인으로 표시할 수 있습니다 플래그를 집합의 구현에는 QueryStatus 메서드는 IOleCommandTarget 인터페이스입니다. MenuControllerLatched 메뉴는 다음과 같은 특징이 있습니다.

  • 상위 그룹 또는 Commandplacement를 통해 다른 메뉴에 포함 되어야 합니다.

  • 부모 정의에 사용 됩니다.

  • 모든 종류의 메뉴는 상위를 가질 수 있습니다.

  • 부모 메뉴 표시 될 때마다 사용할 수 있습니다.

  • 표시 되는 메뉴를 확인 하려면 프로그래밍 방식으로 지원 하지 않아도 됩니다.

분할 단추 메뉴에서 명령은 메뉴 단추에 표시 됩니다. 다음 특성 중 하나 표시 되는 명령은 다음과 같습니다.

  • 이 래치 상태입니다 첫 번째 표시 된 명령입니다.

  • 그의 첫 번째 표시 되는 명령입니다.

도구 모음

도구 모음을 제공합니다. 도구 모음에는 다음과 같은 특징이 있습니다.

  • 해당 정의에 부모를 무시합니다.

  • Commandplacement를 사용 하 여 경우에 하위 그룹을 만들 수 없습니다.

  • 항상을 클릭 하 여 표시할 수 있는 도구 모음 에 있는 보기 메뉴.

  • 사용 하 여 표시할 수 있는 VisibilityItem.

  • 모든 코드를 작성 하지 않아도 됩니다. 도구 모음을 만드는 방법에 대 한 예제를 보려면 연습: IDE에 도구 모음 추가.

ToolWindowToolbar

방금 도구 모음 개발 환경에 연결 될 때에 특정 도구 창에 연결 된 도구 모음을 제공 합니다.

  • 해당 정의에 부모를 무시합니다.

  • Commandplacement를 사용 하 여 경우에 하위 그룹을 만들 수 없습니다.

  • 도구 모음을 호스트 하는 도구 창이 표시 됩니다 및 도구 창에 명시적으로 추가 도구 모음 있는 Vspackage만 표시 됩니다. 도구 창 도구 모음 호스트 속성을 가져와서 만들어질 때 일반적으로 수행 됩니다 (표현으로 IVsToolWindowToolbarHost 인터페이스) 도구 창 프레임 및 다음 전화는 AddToolbar 메서드.

조건

선택적 요소. 자세한 내용은 VSCT XML 스키마 조건부 특성를 참조하십시오.

자식 요소

요소

설명

부모

선택적 요소. 메뉴 항목의 부모 요소입니다.

CommandFlag

필수 요소. 자세한 내용은 명령 플래그 요소를 참조하십시오. 메뉴에 대 한 유효한 CommandFlag 값은 다음과 같습니다.

AlwaysCreate

DefaultDocked

DefaultInvisible. 이 플래그의 도구 모음 표시를 영향을 주지 않습니다.

DontCache

DynamicVisibility. 이 플래그의 도구 모음 표시를 영향을 주지 않습니다.

IconAndText

NoCustomize

NotInTBList

NoToolbarClose

TextChanges

TextIsAnchorCommand

문자열

필수 요소. 자세한 내용은 Strings 요소를 참조하십시오. 자식 ButtonText 요소를 정의 해야 합니다.

주석

선택적 설명입니다.

부모 요소

요소

설명

Menus 요소

있는 Vspackage를 구현 하는 모든 메뉴를 정의 합니다.

예제

<Menu guid="cmdGuidWidgetCommands" id="menuIDEditWidget"
  priority="0x0002" type="Menu">
  <Parent guid="cmdSetGuidWidgetCommands" id="groupIDFileEdit">
  <CommandFlag>AlwaysCreate</CommandFlag>
  <Strings>
    <ButtonText>Edit Widget</ButtonText>
  </Strings>
</Menu>

참고 항목

기타 리소스

Visual Studio 명령은 테이블 (.Vsct) 파일