MenuItem 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示 MainMenu 或 ContextMenu 中顯示的個別項目。
此類別在 .NET Core 3.1 和更新版本中無法使用。 請 ToolStripMenuItem 改用 MenuItem ,以取代 控制項。
public ref class MenuItem : System::Windows::Forms::Menu
public class MenuItem : System.Windows.Forms.Menu
type MenuItem = class
inherit Menu
Public Class MenuItem
Inherits Menu
- 繼承
範例
下列程式碼範例會建立表單的功能表結構。 範例程式碼會新增 MenuItem 來代表最上層功能表項目、將子功能表專案新增至其中以選取字型大小,然後將兩個子功能表項目目新增至代表應用程式中大字型和小型字型選項的功能表項目。 此範例會要求有名為 mainMenu1
的物件,以及名為 menuItem1
、 menuItem3
menuItem2
和 的 menuItem4
四 MenuItem 個 MainMenu 物件。
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 和更新版本中無法使用。 請改用 ToolStripMenuItem。
若要 MenuItem 顯示 ,您必須將它新增至 MainMenu 或 ContextMenu 。 若要建立子功能表,您可以將 物件加入 MenuItem 父 MenuItemsMenuItem 代 的 屬性。
類別 MenuItem 提供屬性,可讓您設定功能表項目的外觀和功能。 若要在功能表項目旁邊顯示核取記號,請使用 Checked 屬性。 您可以使用這項功能來識別在互斥功能表項目清單中選取的功能表項目。 例如,如果您有一組功能表項目可用來設定控制項中的 TextBox 文字色彩,您可以使用 Checked 屬性來識別目前選取的色彩。 屬性 Shortcut 可用來定義可按下以選取功能表項目的鍵盤組合。
對於 MenuItem 多個檔介面 (MDI) 應用程式中顯示的物件,您可以使用 MergeMenu 方法,將 的 MDI 父系功能表與其子表單的功能表合併,以建立合併功能表結構。 MenuItem因為 不能同時在多個位置重複使用 ,例如 在 和 ContextMenu 中 MainMenu ,所以您可以使用 CloneMenu 方法來建立 複本 MenuItem ,以用於另一個位置。
事件 Popup 可讓您在功能表顯示之前執行工作。 例如,您可以建立此事件的事件處理常式,根據程式碼的狀態來顯示或隱藏功能表項目。 此 Select 事件可讓您執行工作,例如當使用者將滑鼠指標放在功能表項目上方時,為應用程式的功能表項目提供詳細的說明。
建構函式
MenuItem() |
使用空白標題來初始化 MenuItem。 |
MenuItem(MenuMerge, Int32, Shortcut, String, EventHandler, EventHandler, EventHandler, MenuItem[]) |
使用指定的標題;為 MenuItem、Click 和 Select 事件定義的事件處理常式;快速鍵;合併型別;和為功能表項目指定的順序,來初始化 Popup 類別的新執行個體。 |
MenuItem(String) |
使用功能表項目的指定標題來初始化 MenuItem 類別的新執行個體。 |
MenuItem(String, EventHandler) |
使用指定的標題和功能表項目的 Click 事件的事件處理常式,初始化類別的新執行個體。 |
MenuItem(String, EventHandler, Shortcut) |
使用指定的標題、事件處理常式,和功能表項目的相關快速鍵,來初始化類別的新執行個體。 |
MenuItem(String, MenuItem[]) |
使用指定標題和為功能表項目定義的子功能表項目陣列,來初始化類別的新執行個體。 |
欄位
FindHandle |
指定 FindMenuItem(Int32, IntPtr) 方法應該搜尋控制代碼。 (繼承來源 Menu) |
FindShortcut |
指定 FindMenuItem(Int32, IntPtr) 方法應該搜尋捷徑。 (繼承來源 Menu) |
屬性
BarBreak |
取得或設定值,指出 MenuItem 是放在新的一行 (對加入至 MainMenu 物件的功能表項目而言) 還是新的一欄 (對 ContextMenu 中顯示的子功能表項目或功能表項目而言)。 |
Break |
取得或設定值,指出項目是放在新的一行 (對加入至 MainMenu 物件的功能表項目而言) 或新的一欄 (對 ContextMenu 中顯示的功能表項目或子功能表項目而言)。 |
CanRaiseEvents |
取得值,指出元件是否能引發事件。 (繼承來源 Component) |
Checked |
取得或設定值,指出功能表項目的文字旁邊要不要顯示核取記號。 |
Container |
取得包含 IContainer 的 Component。 (繼承來源 Component) |
DefaultItem |
取得或設定值,指出功能表項目是不是預設的功能表項目。 |
DesignMode |
取得值,指出 Component 目前是否處於設計模式。 (繼承來源 Component) |
Enabled |
取得或設定值,指出是否啟用功能表項目。 |
Events |
取得附加在這個 Component 上的事件處理常式清單。 (繼承來源 Component) |
Handle |
取得值,表示功能表的視窗控制代碼 (Window Handle)。 (繼承來源 Menu) |
Index |
取得或設定值,指出功能表項目在父功能表中的位置。 |
IsParent |
取得值,指出功能表項目是否含有子功能表項目。 |
MdiList |
取得或設定值,指出功能表項目中會不會填入相關表單內顯示的多重文件介面 (MDI) 的子視窗清單。 |
MdiListItem |
取得值,指出用來顯示多重文件介面 (MDI) 子表單清單的 MenuItem。 (繼承來源 Menu) |
MenuID |
取得值,指出這個功能表項目的 Windows 識別項。 |
MenuItems |
取得值,指出與功能表相關的 MenuItem 物件集合。 (繼承來源 Menu) |
MergeOrder |
取得或設定值,指出功能表項目與其他項目合併時的相對位置。 |
MergeType |
取得或設定值,指出這個功能表項目的功能表和其他功能表合併時,這個功能表項目的行為。 |
Mnemonic |
取得值,指出與這個功能表項目相關的助憶鍵字元。 |
Name |
取得或設定 Menu 的名稱。 (繼承來源 Menu) |
OwnerDraw |
取得或設定值,指出是您所提供的程式碼繪製功能表項目,還是由 Windows 來繪製功能表項目。 |
Parent |
取得值,指出含有這個功能表項目的功能表。 |
RadioCheck |
取得或設定值,指出如果選取 MenuItem,是否顯示選項按鈕,而不顯示核取記號。 |
Shortcut |
取得或設定值,指出與功能表項目相關的快速鍵。 |
ShowShortcut |
取得或設定值,指出功能表項目標題的旁邊是否顯示出與功能表項目相關的快速鍵。 |
Site | (繼承來源 Component) |
Tag |
取得或設定與控制項相關的使用者定義資料。 (繼承來源 Menu) |
Text |
取得或設定值,指出功能表項目的標題。 |
Visible |
取得或設定值,指出功能表項目是否為可見。 |
方法
事件
Click |
發生於按一下功能表項目,或使用為功能表項目定義的快速鍵或便捷鍵選取時。 |
Disposed |
當 Dispose() 方法的呼叫處置元件時,就會發生。 (繼承來源 Component) |
DrawItem |
當功能表項目的 OwnerDraw 屬性設定為 |
MeasureItem |
發生於功能表繪製前需要先知道功能表項目的大小時。 |
Popup |
發生於功能表項目的功能表項目清單顯示前。 |
Select |
發生於使用者將指標放在功能表項目上方時。 |