System.Object System.MarshalByRefObject System.ComponentModel.Component System.Windows.Forms.Menu public abstract class Menu : Component見てのとおり、このクラスは抽象クラスです
public class Menu.MenuItemCollection : IList , ICollection , IEnumerableこのクラスは、メニュー項目を管理する非常に重要な役割を持っています
System.Object System.MarshalByRefObject System.ComponentModel.Component System.Windows.Forms.Menu System.Windows.Forms.MainMenu public class MainMenu : Menuこのクラスのコンストラクタは、次のように定義されています
public virtual int Add(MenuItem item); public virtual MenuItem Add(string caption); public virtual int Add(int index , MenuItem item); public virtual MenuItem Add(string caption , EventHandler onClick); public virtual MenuItem Add(string caption , MenuItem[] items);item には追加する項目を示す MenuItem を
using System.Windows.Forms; class WinMain : Form { public static void Main(string[] args) { Application.Run(new WinMain()); } public WinMain() { MainMenu mm = new MainMenu(); mm.MenuItems.Add("Rena(&R)"); mm.MenuItems.Add("Yuki(&Y)"); mm.MenuItems.Add("Mimi(&M)"); Menu = mm; } }
System.Object System.MarshalByRefObject System.ComponentModel.Component System.Windows.Forms.Menu System.Windows.Forms.MenuItem public class MenuItem : Menuこのクラスのコンストラクタは次のように定義されています
public MenuItem(); public MenuItem(string text); public MenuItem(string text , EventHandler onClick); public MenuItem(string text , MenuItem[] items); public MenuItem( string text , EventHandler onClick , Shortcut shortcut ); public MenuItem( MenuMerge mergeType , int mergeOrder , Shortcut shortcut , string text , EventHandler onClick , EventHandler onPopup , EventHandler onSelect , MenuItem[] items );text には、メニュー項目の文字列を指定します
[Serializable] [ComVisible(true)] public enum Shortcutこの列挙型は、次のようなメンバを定義しています
メンバ | ショートカット条件 | メンバ | ショートカット条件 |
---|---|---|---|
Alt0 | Alt + 0 | Alt1 | Alt + 1 |
Alt2 | Alt + 2 | Alt3 | Alt + 3 |
Alt4 | Alt + 4 | Alt5 | Alt + 5 |
Alt6 | Alt + 6 | Alt7 | Alt + 7 |
Alt8 | Alt + 8 | Alt9 | Alt + 9 |
AltBksp | Alt + BackSpace | AltF1 | Alt + F1 |
AltF10 | Alt + F10 | AltF11 | Alt + F11 |
AltF12 | Alt + F12 | AltF2 | Alt + F2 |
AltF3 | Alt + F3 | AltF4 | Alt + F4 |
AltF5 | Alt + F5 | AltF6 | Alt + F6 |
AltF7 | Alt + F7 | AltF8 | Alt + F8 |
AltF9 | Alt + F9 | Ctrl0 | Ctrl + 0 |
Ctrl1 | Ctrl + 1 | Ctrl2 | Ctrl + 2 |
Ctrl3 | Ctrl + 3 | Ctrl4 | Ctrl + 4 |
Ctrl5 | Ctrl + 5 | Ctrl6 | Ctrl + 6 |
Ctrl7 | Ctrl + 7 | Ctrl8 | Ctrl + 8 |
Ctrl9 | Ctrl + 9 | CtrlA | Ctrl + A |
CtrlB | Ctrl + B | CtrlC | Ctrl + C |
CtrlD | Ctrl + D | CtrlDel | Ctrl + Delete |
CtrlE | Ctrl + E | CtrlF | Ctrl + F |
CtrlF1 | Ctrl + F1 | CtrlF10 | Ctrl + F10 |
CtrlF11 | Ctrl + F11 | CtrlF12 | Ctrl + F12 |
CtrlF2 | Ctrl + F2 | CtrlF3 | Ctrl + F3 |
CtrlF4 | Ctrl + F4 | CtrlF5 | Ctrl + F5 |
CtrlF6 | Ctrl + F6 | CtrlF7 | Ctrl + F7 |
CtrlF8 | Ctrl + F8 | CtrlF9 | Ctrl + F9 |
CtrlG | Ctrl + G | CtrlH | Ctrl + H |
CtrlI | Ctrl + I | CtrlIns | Ctrl + Insert |
CtrlJ | Ctrl + J | CtrlK | Ctrl + K |
CtrlL | Ctrl + L | CtrlM | Ctrl + M |
CtrlN | Ctrl + N | CtrlO | Ctrl + O |
CtrlP | Ctrl + P | CtrlQ | Ctrl + Q |
CtrlR | Ctrl + R | CtrlS | Ctrl + S |
CtrlShift0 | Ctrl + Shift + 0 | CtrlShift1 | Ctrl + Shift + 1 |
CtrlShift2 | Ctrl + Shift + 2 | CtrlShift3 | Ctrl + Shift + 3 |
CtrlShift4 | Ctrl + Shift + 4 | CtrlShift5 | Ctrl + Shift + 5 |
CtrlShift6 | Ctrl + Shift + 6 | CtrlShift7 | Ctrl + Shift + 7 |
CtrlShift8 | Ctrl + Shift + 8 | CtrlShift9 | Ctrl + Shift + 9 |
CtrlShiftA | Ctrl + Shift + A | CtrlShiftB | Ctrl + Shift + B |
CtrlShiftC | Ctrl + Shift + C | CtrlShiftD | Ctrl + Shift + D |
CtrlShiftE | Ctrl + Shift + E | CtrlShiftF | Ctrl + Shift + F |
CtrlShiftF1 | Ctrl + Shift + F1 | CtrlShiftF10 | Ctrl + Shift + F10 |
CtrlShiftF11 | Ctrl + Shift + F11 | CtrlShiftF12 | Ctrl + Shift + F12 |
CtrlShiftF2 | Ctrl + Shift + F2 | CtrlShiftF3 | Ctrl + Shift + F3 |
CtrlShiftF4 | Ctrl + Shift + F4 | CtrlShiftF5 | Ctrl + Shift + F5 |
CtrlShiftF6 | Ctrl + Shift + F6 | CtrlShiftF7 | Ctrl + Shift + F7 |
CtrlShiftF8 | Ctrl + Shift + F8 | CtrlShiftF9 | Ctrl + Shift + F9 |
CtrlShiftG | Ctrl + Shift + G | CtrlShiftH | Ctrl + Shift + H |
CtrlShiftI | Ctrl + Shift + I | CtrlShiftJ | Ctrl + Shift + J |
CtrlShiftK | Ctrl + Shift + K | CtrlShiftL | Ctrl + Shift + L |
CtrlShiftM | Ctrl + Shift + M | CtrlShiftN | Ctrl + Shift + N |
CtrlShiftO | Ctrl + Shift + O | CtrlShiftP | Ctrl + Shift + P |
CtrlShiftQ | Ctrl + Shift + Q | CtrlShiftR | Ctrl + Shift + R |
CtrlShiftS | Ctrl + Shift + S | CtrlShiftT | Ctrl + Shift + T |
CtrlShiftU | Ctrl + Shift + U | CtrlShiftV | Ctrl + Shift + V |
CtrlShiftW | Ctrl + Shift + W | CtrlShiftX | Ctrl + Shift + X |
CtrlShiftY | Ctrl + Shift + Y | CtrlShiftZ | Ctrl + Shift + Z |
CtrlT | Ctrl + T | CtrlU | Ctrl + U |
CtrlV | Ctrl + V | CtrlW | Ctrl + W |
CtrlX | Ctrl + X | CtrlY | Ctrl + Y |
CtrlZ | Ctrl + Z | Del | Delete |
F1 | F1 | F10 | F10 |
F11 | F11 | F12 | F12 |
F2 | F2 | F3 | F3 |
F4 | F4 | F5 | F5 |
F6 | F6 | F7 | F7 |
F8 | F8 | F9 | F9 |
Ins | Insert | None | ショートカット キーなし |
ShiftDel | Shift + Delete | ShiftF1 | Shift + F1 |
ShiftF10 | Shift + F10 | ShiftF11 | Shift + F11 |
ShiftF12 | Shift + F12 | ShiftF2 | Shift + F2 |
ShiftF3 | Shift + F3 | ShiftF4 | Shift + F4 |
ShiftF5 | Shift + F5 | ShiftF6 | Shift + F6 |
ShiftF7 | Shift + F7 | ShiftF8 | Shift + F8 |
ShiftF9 | Shift + F9 | ShiftIns | Shift + Insert |
[Serializable] public enum MenuMergeこの列挙型メンバは、次のように定義されています
メンバ | 解説 |
---|---|
Add | MenuItem は、マージ後のメニュー内にある 既存の MenuItem オブジェクトのコレクションに追加されます |
MergeItems | この MenuItem のすべてのサブメニュー項目は マージ後のメニューで同じ位置にある 既存の MenuItem オブジェクトのサブメニュー項目にマージされます |
Remove | MenuItem は、マージ後のメニューには含まれません |
Replace | MenuItem は、マージ後のメニューで 同じ位置にある既存の MenuItem と置換されます |
using System.Windows.Forms; class WinMain : Form { public static void Main(string[] args) { Application.Run(new WinMain()); } public WinMain() { MainMenu mm = new MainMenu(); MenuItem rena = new MenuItem("Rena"); MenuItem yuki = new MenuItem("Yuki"); MenuItem mimi = new MenuItem("Mimi"); mm.MenuItems.Add(rena); mm.MenuItems.Add(yuki); mm.MenuItems.Add(mimi); Menu = mm; } }このプログラムを実行すると、先ほどのように