Menu 클래스

정의

모든 메뉴의 기본 기능을 나타냅니다.Represents the base functionality for all menus.

이 클래스는 .NET Core 3.1 이상 버전에서 사용할 수 없습니다.This class is not available in .NET Core 3.1 and later versions. 대신 Menu 컨트롤을 대체하고 확장하는 ToolStripDropDownToolStripDropDownMenu를 사용합니다.Use ToolStripDropDown and ToolStripDropDownMenu instead, which replace and extend the Menu control.

public ref class Menu abstract : System::ComponentModel::Component
[System.ComponentModel.ListBindable(false)]
public abstract class Menu : System.ComponentModel.Component
[<System.ComponentModel.ListBindable(false)>]
type Menu = class
    inherit Component
Public MustInherit Class Menu
Inherits Component
상속
파생
특성

예제

다음 코드 예제에서는 파생 클래스인를 사용 하 여 MenuItem 폼의 메뉴 구조를 만듭니다.The following code example uses the derived class, MenuItem, to create a menu structure for a form. 예제 코드에서는 추가 MenuItem 최상위 메뉴 항목을 나타내는 글꼴 크기를 선택 하는 것에 대 한 하위 메뉴 항목을 추가 하 고 다음 애플리케이션에서 크고 작은 글꼴 선택 옵션을 나타내는 해당 메뉴 항목에 두 개의 하위 메뉴 항목을 추가 합니다.The example code adds a MenuItem to represent the top-level menu item, adds a submenu item to it for selecting a font size, and then adds two submenu items to that menu item that represent large and small font choices in an application. 예제에는 필요는 MainMenu 개체인 mainMenu1 및 4 MenuItem 명명 된 개체 menuItem1, menuItem2, menuItem3, 및 menuItem4합니다.The example requires that there is a MainMenu object named mainMenu1 and four MenuItem objects named menuItem1, menuItem2, menuItem3, and menuItem4.

public:
   void CreateMyMenu()
   {
      // Set the caption for the top-level menu item.
      menuItem1->Text = "Edit";
      // Set the caption for the first submenu.
      menuItem2->Text = "Font Size";
      // Set the caption for menuItem2's first submenu.
      menuItem3->Text = "Small";
      // Set the checked property to true since this is the default value.
      menuItem3->Checked = true;
      // Define a shortcut key combination for the menu item.
      menuItem3->Shortcut = Shortcut::CtrlS;
      // Set the caption of the second sub menu item of menuItem2.
      menuItem4->Text = "Large";
      // Define a shortcut key combination for the menu item.
      menuItem4->Shortcut = Shortcut::CtrlL;
      // Set the index of the menu item so it is placed below the first submenu item.
      menuItem4->Index = 1;
      // Add menuItem3 and menuItem4 to menuItem2's list of menu items.
      menuItem2->MenuItems->Add( menuItem3 );
      menuItem2->MenuItems->Add( menuItem4 );
      // Add menuItem2 to menuItem1's list of menu items.
      menuItem1->MenuItems->Add( menuItem2 );
      // Add menuItem1 to the MainMenu for displaying.
      mainMenu1->MenuItems->Add( menuItem1 );
   }
public void CreateMyMenu()
    {
    // Set the caption for the top-level menu item.
    menuItem1.Text = "Edit";
    // Set the caption for the first submenu.
    menuItem2.Text = "Font Size";
    // Set the caption for menuItem2's first submenu.
    menuItem3.Text = "Small";
    // Set the checked property to true since this is the default value.
    menuItem3.Checked = true;
    // Define a shortcut key combination for the menu item.
    menuItem3.Shortcut = Shortcut.CtrlS;
    // Set the caption of the second sub menu item of menuItem2.
    menuItem4.Text = "Large";
    // Define a shortcut key combination for the menu item.
    menuItem4.Shortcut = Shortcut.CtrlL;
    // Set the index of the menu item so it is placed below the first submenu item.
    menuItem4.Index = 1;
    // Add menuItem3 and menuItem4 to menuItem2's list of menu items.
    menuItem2.MenuItems.Add(menuItem3);
    menuItem2.MenuItems.Add(menuItem4);
    // Add menuItem2 to menuItem1's list of menu items.
    menuItem1.MenuItems.Add(menuItem2);
    // Add menuItem1 to the MainMenu for displaying.
    mainMenu1.MenuItems.Add(menuItem1);
    }

Public Sub CreateMyMenu()
    ' Set the caption for the top-level menu item.
    menuItem1.Text = "Edit"
    ' Set the caption for the first submenu.
    menuItem2.Text = "Font Size"
    ' Set the caption for menuItem2's first submenu.
    menuItem3.Text = "Small"
    ' Set the checked property to true since this is the default value.
    menuItem3.Checked = True
    ' Define a shortcut key combination for the menu item.
    menuItem3.Shortcut = Shortcut.CtrlS
    ' Set the caption of the second sub menu item of menuItem2.
    menuItem4.Text = "Large"
    ' Define a shortcut key combination for the menu item.
    menuItem4.Shortcut = Shortcut.CtrlL
    ' Set the index of the menu item so it is placed below the first submenu item.
    menuItem4.Index = 1
    ' Add menuItem3 and menuItem4 to menuItem2's list of menu items.
    menuItem2.MenuItems.Add(menuItem3)
    menuItem2.MenuItems.Add(menuItem4)
    ' Add menuItem2 to menuItem1's list of menu items.
    menuItem1.MenuItems.Add(menuItem2)
    ' Add menuItem1 to the MainMenu for displaying.
    mainMenu1.MenuItems.Add(menuItem1)
End Sub

설명

이 클래스는 .NET Core 3.1 이상 버전에서 사용할 수 없습니다.This class is not available in .NET Core 3.1 and later versions. 대신 및 을 사용하세요.Use and instead.

이 클래스는 MainMenu , 및 클래스의 기본 클래스입니다 MenuItem ContextMenu .This class is the base class for the MainMenu, MenuItem, and ContextMenu classes. 이 클래스의 인스턴스를 만들 수 없습니다.You cannot create an instance of this class. 애플리케이션 구성에 대 한 메뉴 MenuItem 개체입니다.The menus for an application consist of MenuItem objects. MenuItem하위 메뉴 항목을 나타내는 다른 개체를 포함할 수 있습니다.These can contain other MenuItem objects, representing submenu items. MenuItem개체는 MainMenu 폼에 대 한 전체 메뉴 구조 나 ContextMenu 바로 가기 메뉴를 표시 하는 데 사용 되는에 대해에 저장 될 수 있습니다.The MenuItem objects can be stored in a MainMenu for display as an entire menu structure for a form or a ContextMenu that is used to display shortcut menus. 이 클래스는 모든 메뉴 클래스에 공통적인 기능을 제공 합니다.This class provides functionality that is common for all the menu classes.

많은 기본 클래스와 달리 Menu 클래스는 파생 클래스를 사용 하 여 대부분의 속성을 정의 합니다.Unlike many base classes, the Menu class uses its derived classes to define many of its properties. 메뉴를 (MDI) 다중 문서 인터페이스 애플리케이션에서 사용 하는 경우 사용할 수 있습니다 합니다 MdiListItem 지정 하는 속성을 MenuItem 애플리케이션에서 열려 있는 MDI 자식 폼의 목록을 표시 하는 합니다.If you are using your menu in a multiple-document interface (MDI) application, you can use the MdiListItem property to specify a MenuItem that displays a list of open MDI child forms in your application. MenuItems속성은 MenuItem 메뉴 클래스에 저장 된 개체의 목록을 포함 합니다.The MenuItems property contains a list of MenuItem objects stored in the menu class. 또는의 MainMenu 경우 ContextMenu 이 속성에는 표시 되는 모든 개체가 포함 됩니다 MenuItem .For a MainMenu or ContextMenu, this property contains all the MenuItem objects that are displayed. 의 경우 MenuItem 속성은 MenuItems 연결 된 하위 메뉴 항목을 나타냅니다.For a MenuItem, the MenuItems property represents the submenu items associated with it.

클래스는 파생 된 모든 메뉴 클래스에 대해 제공 되는 속성 외에 Menu 도 및 등의 메서드를 제공 CloneMenu 하 여 MergeMenu 기존 메뉴에서 새 메뉴를 만들고 두 메뉴 구조를 함께 병합 합니다.In addition to the properties that are provided for all the derived menu classes, the Menu class also provides methods, such as CloneMenu and MergeMenu, that enable you to create new menus from existing menus, and also merge two menu structures together.

Menu클래스는 또한 중첩 된 클래스를 정의 합니다 Menu.MenuItemCollection .The Menu class also defines the nested class Menu.MenuItemCollection. 이 클래스는 MenuItem 속성에서 사용 하는 개체의 컬렉션을 정의 합니다 MenuItems .This class defines the collection of MenuItem objects used by the MenuItems property. 클래스의 메서드를 사용 하 여 Menu.MenuItemCollection , 또는에서 메뉴 항목을 추가 하 고 제거할 수 있습니다 MainMenu ContextMenu MenuItem .You can use the methods of the Menu.MenuItemCollection class to add and remove menu items from a MainMenu, ContextMenu, or MenuItem.

생성자

Menu(MenuItem[])

Menu 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the Menu class.

필드

FindHandle

FindMenuItem(Int32, IntPtr) 메서드가 핸들을 검색하도록 지정합니다.Specifies that the FindMenuItem(Int32, IntPtr) method should search for a handle.

FindShortcut

FindMenuItem(Int32, IntPtr) 메서드가 바로 가기를 검색하도록 지정합니다.Specifies that the FindMenuItem(Int32, IntPtr) method should search for a shortcut.

속성

CanRaiseEvents

구성 요소가 이벤트를 발생시킬 수 있는지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether the component can raise an event.

(다음에서 상속됨 Component)
Container

IContainer을 포함하는 Component를 가져옵니다.Gets the IContainer that contains the Component.

(다음에서 상속됨 Component)
DesignMode

Component가 현재 디자인 모드인지 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether the Component is currently in design mode.

(다음에서 상속됨 Component)
Events

Component에 연결된 이벤트 처리기의 목록을 가져옵니다.Gets the list of event handlers that are attached to this Component.

(다음에서 상속됨 Component)
Handle

메뉴의 창 핸들을 나타내는 값을 가져옵니다.Gets a value representing the window handle for the menu.

IsParent

이 메뉴에 메뉴 항목이 들어 있는지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether this menu contains any menu items. 이 속성은 읽기 전용입니다.This property is read-only.

MdiListItem

MDI(다중 문서 인터페이스) 자식 폼의 목록을 표시하는 데 사용되는 MenuItem을 나타내는 값을 가져옵니다.Gets a value indicating the MenuItem that is used to display a list of multiple document interface (MDI) child forms.

MenuItems

해당 메뉴와 연결된 MenuItem 개체의 컬렉션을 나타내는 값을 가져옵니다.Gets a value indicating the collection of MenuItem objects associated with the menu.

Name

Menu의 이름을 가져오거나 설정합니다.Gets or sets the name of the Menu.

Site

ComponentISite를 가져오거나 설정합니다.Gets or sets the ISite of the Component.

(다음에서 상속됨 Component)
Tag

컨트롤과 연관된 사용자 정의 데이터를 가져오거나 설정합니다.Gets or sets user-defined data associated with the control.

메서드

CloneMenu(Menu)

현재 Menu에 매개 변수로 전달되는 Menu를 복사합니다.Copies the Menu that is passed as a parameter to the current Menu.

CreateMenuHandle()

Menu의 새 핸들을 만듭니다.Creates a new handle to the Menu.

CreateObjRef(Type)

원격 개체와 통신하는 데 사용되는 프록시 생성에 필요한 모든 관련 정보가 들어 있는 개체를 만듭니다.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(다음에서 상속됨 MarshalByRefObject)
Dispose()

Component에서 사용하는 모든 리소스를 해제합니다.Releases all resources used by the Component.

(다음에서 상속됨 Component)
Dispose(Boolean)

Menu에서 사용하는 리소스(메모리 제외)를 삭제합니다.Disposes of the resources, other than memory, used by the Menu.

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.Determines whether the specified object is equal to the current object.

(다음에서 상속됨 Object)
FindMenuItem(Int32, IntPtr)

지정된 값이 포함된 MenuItem을 가져옵니다.Gets the MenuItem that contains the value specified.

FindMergePosition(Int32)

메뉴 항목이 메뉴에 삽입될 위치를 반환합니다.Returns the position at which a menu item should be inserted into the menu.

GetContextMenu()

이 메뉴가 들어 있는 ContextMenu를 가져옵니다.Gets the ContextMenu that contains this menu.

GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(다음에서 상속됨 Object)
GetLifetimeService()
사용되지 않습니다.

이 인스턴스의 수명 정책을 제어하는 현재의 수명 서비스 개체를 검색합니다.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(다음에서 상속됨 MarshalByRefObject)
GetMainMenu()

이 메뉴가 들어 있는 MainMenu를 가져옵니다.Gets the MainMenu that contains this menu.

GetService(Type)

Component 또는 해당 Container에서 제공하는 서비스를 나타내는 개체를 반환합니다.Returns an object that represents a service provided by the Component or by its Container.

(다음에서 상속됨 Component)
GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
InitializeLifetimeService()
사용되지 않습니다.

이 인스턴스의 수명 정책을 제어하는 수명 서비스 개체를 가져옵니다.Obtains a lifetime service object to control the lifetime policy for this instance.

(다음에서 상속됨 MarshalByRefObject)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
MemberwiseClone(Boolean)

현재 MarshalByRefObject 개체의 단순 복사본을 만듭니다.Creates a shallow copy of the current MarshalByRefObject object.

(다음에서 상속됨 MarshalByRefObject)
MergeMenu(Menu)

한 메뉴의 MenuItem 개체를 현재 메뉴와 병합합니다.Merges the MenuItem objects of one menu with the current menu.

ProcessCmdKey(Message, Keys)

명령 키를 처리합니다.Processes a command key.

ToString()

String 컨트롤을 나타내는 Menu을 반환합니다.Returns a String that represents the Menu control.

이벤트

Disposed

Dispose() 메서드를 호출하여 구성 요소를 삭제할 때 발생합니다.Occurs when the component is disposed by a call to the Dispose() method.

(다음에서 상속됨 Component)

적용 대상

추가 정보