MDI-多文档窗体】的更多相关文章

MdiLayout枚举成员及说明 Casecade s全部Mdi层叠在父窗体 TileHorizontal 水平平铺 TitleVertical 垂直平铺 Form1.cs (mdi) using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; u…
创建MDI窗体之前,首先要明确两个概念:父窗体和子窗体,在MDI窗体中,起到容器作用的窗体被称为“父窗体”, 可放在父窗体中的其他窗体被称为子窗体,也成为MDI子窗体.当应用程序启动时,首先会显示父窗体,所有的子窗体 都在父窗体中打开.每个应用程序只能有一个父窗体,其他子窗体不能移出父窗体的框架区域. 1.在本实例实现前,首先要将Form1窗体的IsMdiContainer属性设置为true,以便使其成为父窗体! 2.一开始只有Form1然后我们要添加两个类,如下图所示: private voi…
private void 加载窗体_Click(object sender, EventArgs e) { Form2 frm = new Form2();//实例化 Form2 frm.MdiParent = this;//this关键字,在这里表示Form1窗体的对象. frm.Show(); Form3 frm3 = new Form3();//实例化 Form2 frm3.MdiParent = this;//this关键字,在这里表示Form1窗体的对象. frm3.Show(); }…
1.IsMdicontainer属性设置是否为多文档窗体 this.IsMdiContainer = true; 2.MdiParent属性设置为父窗体 Frm_Child frm = new Frm_Child();//实例化子窗体对象 frm.MdiParent = this;//设置子窗体的父窗体为当前窗体 frm.Show();//显示子窗体 Frm_Child frm = new Frm_Child();//实例化子窗体对象 frm.MdiParent = this;//设置子窗体的父…
在Winform界面中窗体我们一般使用多文档进行展示,也就是类似一般的选项卡的方式可以加载多个窗体界面.一般来说,我们如果打开新的窗体,给窗体传递参数是很容易的事情,但是在框架层面,一般的窗体是通过动态创建的,一般传入窗体的类型,在多文档集合里面判断,如果存在则激活,如果不存在则创建的方式,所以我们传递参数会碰到一些问题.本文即使介绍如何在这种方式下,给窗体对象传递参数,从而实现相应的数据处理功能. 不管是主体界面中,左侧包含树形列表,还是顶部包含工具栏的情况,都可能涉及打开窗体的时候,传递一些…
一.MDI简介 MDI就是多文档界面(Multi-document Interface,MDI)应用程序 MDI就是在主窗口里创建多个同类型的MDI子窗口,这些MDI子窗口在主窗口里显示,并共享主窗口上工具栏和菜单等操作功能,主窗口上的操作都针对当前活动的MDI子窗口进行 二.QMdiArea组件 设计MDI应用程序需要在主窗口工作区放置一个QMdiArea作为MDI子窗体的容器 所以我们需要事先创建窗体类对象,然后将窗口类通过addSubWindow函数添加到MDIArea组件中,然后再调用窗…
创建从一个窗口弹出多个子窗口的结构叫MDI窗体结构 如果不按MDI结构管理,最简单的做法是: 在窗体A上添加菜单或按钮,在菜单或按钮事件中添加弹出B窗体代码: B b = new B(); b.show() 这样A与B没有任何关系,有多少个弹出窗口任务栏上就有多少个图标,父窗口最小化时其余窗口没有任何变化.这样比较凌乱. 但好处是弹出窗口的位置和大小与父窗口没有约束关系,弹出窗口可以在父窗口之外显示. 稍改进的方法(可能是比下方改进MDI还好的方法) B b = new B(); b.show(…
MDI程序的框架 客户窗口是一个预定义的窗口类(MDICLIENT),它是框架窗口的子窗口同时也是各个子文档窗口的父窗口.框架窗口和各个子文档窗口都是自定义的窗口类. MDI程序中的一些要点 窗口中的菜单资源是属于框架窗口,也就是说如果要改变菜单需要面向框架窗口操作.如果需要更改菜单可以向客户窗口发送WM_MDISETMENU消息. SendMessage (hwndClient, WM_MDISETMENU, (WPARAM) hMenu, (LPARAM) hMenuWindow) ; 当子…
1.首先设置父级Form1界面,只需要将该界面的IsMdiContainer属性设置为true: 2.设置按钮的事件来打开子级的窗口Form2,Form3等等: 3.在From1内设置一个容器panel,范围为需要打开的子级界面的大小: 4.设置Form2.Form3的事件,以及唯一窗口等: //Form2的点击事件 private void form2ToolStripMenuItem_Click(object sender, EventArgs e) { Form2 f2 = new For…
Qt下创建类似window平台的MDI多文档区域使用QMdiArea QMdiArea * mdiArea; mdiArea = new QMdiArea(this); //A widget 为window MDI 提供一个区域 mdiArea->setFocusPolicy(Qt::ClickFocus); //接收鼠标单击策略 mdiArea->setViewMode(QMdiArea::TabbedView); //页切换模式 tab模式 mdiArea->setTabsClosa…