MDI 窗口的创建
Posted Jerron Lu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MDI 窗口的创建相关的知识,希望对你有一定的参考价值。
1、创建MDI 的父窗口 FormMain
设置窗口的IsMDIContainer 的属性为True
2、创建MDI 的子窗口
在“添加新项”对话框中,选择“Windows 窗体”(在 Visual Basic 中或 Visual C# 中)或从“模板”窗格中选择“Windows 窗体应用程序 (.NET)”(在 Visual C++ 中)。 在“名称”框中,将窗体命名为 Form2。 单击“打开”按钮,将窗体添加到项目中。
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace MDI { public partial class FormMain : Form { public FormMain() { InitializeComponent(); } private void 新建NToolStripMenuItem_Click(object sender, EventArgs e) { Form fr1 = new Form(); fr1.MdiParent = this; fr1.Show(); } private void 打开OToolStripMenuItem_Click(object sender, EventArgs e) { FormMDI1 frmMDI1 = new FormMDI1(); frmMDI1.MdiParent = this; frmMDI1.Show(); FormMDI2 frmMDI2 = new FormMDI2(); frmMDI2.MdiParent = this; //frmMDI2.Owner = this; frmMDI2.Show(); FormMDI3 frmMDI3 = new FormMDI3(); frmMDI3.MdiParent = this; frmMDI3.Show(); } private void FiletoolStripMenuItem1_Click(object sender, EventArgs e) { LayoutMdi(MdiLayout.Cascade); } private void NewStripMenuItem2_Click(object sender, EventArgs e) { LayoutMdi(MdiLayout.TileHorizontal); } private void 垂直排列ToolStripMenuItem_Click(object sender, EventArgs e) { LayoutMdi(MdiLayout.TileVertical); } private void 退出XToolStripMenuItem_Click(object sender, EventArgs e) { this.Close(); this.Dispose(); } } }
备注:此程序创建了三个MDI 的子窗口,通过菜单栏的打开同时显示三个子窗口,使用窗口布局菜单切换MDI 子窗口的布局
以上是关于MDI 窗口的创建的主要内容,如果未能解决你的问题,请参考以下文章
我使用vc++编程,我使用RegisterClassEx注册了窗口类,怎么用CreateWindow创建该类的MDI窗口?
2015.12.14 MDI(多文档窗口结构)设置基本解决,折腾一天,部分解决存在已久的问题。但效果仍不如临时航线的MDI窗体结构。