C# winForm MDI使用小记
2010-01-08 23:25
225 查看
代码没能带回来,博文是在linux平台写的,有些名字没记牢,会有出入,attention
1,首先,父窗口要设置isenablemdi属性。实现MDI结构的父子窗口套用,最重要的是在父窗口实例化自窗口(例frmForm),(名字好像有些错误)
2,关于自窗口在父窗口中的自动排列,C#提供一个父窗口属性定义,(好像是mdiLayout),通过设置这个属性即可实现层叠、横向、纵向排列(大于三个子窗口时自动调整为平均分配的窗口排列)。
3,我当时调的时候只用三个窗口,所以只看到横向或纵向排列的情况,不知道Vertical和H...在大于三个时可以均匀排布(如左边三个,右边三个)。于是就自己写了一个小算法,也实现了功能;花了两三个小时的样子,感觉效果比自动排的漂亮,呵呵,黄婆了
我的实现方法:
a,利用parentForm.width和parentForm.height以及可以确定的其它控件的大小,计算得到mdi窗口大小
b,根据mdi子窗口数量计算平均每个窗口的面积
c,从(0,0)开始逆序从上往下,从左到右处理每个窗口的location,并把size设置为平均面积(最后查看的窗口在最前面)
这当中有几个细节
a,用arraylist 保存打开的mdi自窗口信息,方便管理和配置(如location,size配置,非常方便)
b,对于奇数个的情况,算平均时窗口数+1;给最中间的窗口的size*2,使其横向铺在最下面,面积为平均值的两倍
Ok,就这样了
1,首先,父窗口要设置isenablemdi属性。实现MDI结构的父子窗口套用,最重要的是在父窗口实例化自窗口(例frmForm),(名字好像有些错误)
FrmForm frmFom=new FrmForm(); frmForm.parent=this;
2,关于自窗口在父窗口中的自动排列,C#提供一个父窗口属性定义,(好像是mdiLayout),通过设置这个属性即可实现层叠、横向、纵向排列(大于三个子窗口时自动调整为平均分配的窗口排列)。
3,我当时调的时候只用三个窗口,所以只看到横向或纵向排列的情况,不知道Vertical和H...在大于三个时可以均匀排布(如左边三个,右边三个)。于是就自己写了一个小算法,也实现了功能;花了两三个小时的样子,感觉效果比自动排的漂亮,呵呵,黄婆了
我的实现方法:
a,利用parentForm.width和parentForm.height以及可以确定的其它控件的大小,计算得到mdi窗口大小
b,根据mdi子窗口数量计算平均每个窗口的面积
c,从(0,0)开始逆序从上往下,从左到右处理每个窗口的location,并把size设置为平均面积(最后查看的窗口在最前面)
这当中有几个细节
a,用arraylist 保存打开的mdi自窗口信息,方便管理和配置(如location,size配置,非常方便)
b,对于奇数个的情况,算平均时窗口数+1;给最中间的窗口的size*2,使其横向铺在最下面,面积为平均值的两倍
Ok,就这样了
相关文章推荐
- winForm中使用MDI窗体
- WinForm CheckedBoxList使用小记
- Winform皮肤控件IrisSkin4.dll使用
- NanUI for Winform 使用示例【第二集】——做一个所见即所得的Markdown编辑器
- C# winform 右下角弹出窗口结果
- WINFORM窗体里使用网页控件的一些办法
- 关于winForm窗体禁用关闭按钮的使用方法及禁用最大化、最小化窗口
- Java transient关键字使用小记
- winform 嵌入资源读取使用
- .NET开发使用Winform的配置文件App.config
- WinForm使用WebService自动升级
- Maven使用小记
- Java transient关键字序列化时使用小记
- 一步一步教你使用AgileEAS.NET基础类库进行应用开发-WinForm应用篇-实例一个模块(商品字典)
- 使用clickone部署vs2005中的winform应用程序(转载)
- WinForm--使用C#制做进程监视器
- c#接口使用方法
- [Winform]使用winform制作远程桌面管理工具
- Java transient关键字使用小记
- Winform关于OpenFileDialog的使用方法