mainmenu:MainMenu的Merge使用

MainMenu Merge

windows form的程序使用菜单mainmenu是,有时需要根据操作隐藏或显示menuitem,另外窗体类和关联的菜单项事件在一个class中,结构清晰。

do like this:
class Form1: Form{
public Form1()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
IsMdiContainer = true;
Menu = new MainMenu();
MenuItem File = Menu.MenuItems.Add(\"&File\");
File.MergeType = MenuMerge.MergeItems;
File.MergeOrder = 0;
MenuItem FileNew = File.MenuItems.Add(\"&New\", new EventHandler(New_Click));
FileNew.Shortcut = Shortcut.CtrlN;
FileNew.MergeOrder = 10;


}
private void New_Click(Object Sender,EventArgs e)
{

}
// other codes
}
public class doc : System.Windows.Forms.Form
{
public doc()
{
Menu = new MainMenu();
MenuItem File = Menu.MenuItems.Add(\"&File\");
File.MergeType = MenuMerge.MergeItems ;
File.MergeOrder = 0;
MenuItem Save=File.MenuItems .Add (\"&Save\",new EventHandler (Save_Click));
Save.MergeType =MenuMerge.MergeItems ;
Save.MergeOrder =9;

MenuItem Saveas=File.MenuItems .Add (\"&Save as\",new EventHandler (Saveas_Click));
Saveas.MergeType =MenuMerge.MergeItems ;
Saveas.MergeOrder =11;

MenuItem Help = Menu.MenuItems.Add(\"&Help\");
Help.MergeOrder = 400;
Help.MenuItems.Add(\"&About .NET Resourcer\");
}
private void Save_Click(Object Sender,EventArgs e)
{

}
private void Saveas_Click(Object Sender,EventArgs e)
{
MessageBox.Show (\"Hello guys\");
}
// other code
}
Tags:  merge mainmenu1 delphimainmenu mainmenu

延伸阅读

最新评论

发表评论