千千静听的窗口,大多数朋友应该很清楚:一个窗口隐藏或显示,其它窗口也会跟着隐藏或显示,这个容易实现。现在的问题是,当第三个窗口出现的时候,如何使它的层叠层次在刚才的两个之上或之下呢,也就是不会出现在开始的两个中间,再就是,如果设置标题栏为none,那么,如何让点击任务栏的时候象有标题栏的时候那样最大化或最小化呢?望高手能够指点!
解决方案 »
- 在C#中调用VC的dll,请问如何在vc的dlL中获得调用他的窗口的HWND呢?
- 对.net感兴趣的朋友都来关注一下!!!!!!!!
- 用过ActiveReport的朋友进来看一下,在添加新建项中找不到ActiveReport文件?
- 类似01背包问题..
- 页面拖动
- 高手救命-C#怎么写监视和记录网络用户访问本机的共享文件夹行为的程序
- 请教各位:C#在webform中,能不能实现无页面刷新的更新table或者datagrid中的数据显示???
- 谁有关于C#下做P2P技术的资料,急,在线等
- web中有父模板的treeview
- 请问:写一个pop3收邮件程序应该用什么控件?
- 谁帮我解释一下抑制显示图表中的(Report_Object_Name)是什么
- 大家认为开发c#2.0和c#3.0相比哪个更好?
自己看看资料就OK啦!
private void WindowsLayout(object sender, System.EventArgs e)
{
System.Windows.Forms.MenuItem mnuitm = new System.Windows.Forms.MenuItem();
mnuitm = (System.Windows.Forms.MenuItem)sender;
switch (mnuitm.Text)
{
case "层叠显示":
this.LayoutMdi(System.Windows.Forms.MdiLayout.Cascade); //层叠窗口
break;
case "水平平铺":
this.LayoutMdi(System.Windows.Forms.MdiLayout.TileHorizontal); //水平平铺
break;
case "垂直平铺":
this.LayoutMdi(System.Windows.Forms.MdiLayout.TileVertical); //垂直平铺
break;
case "全部关闭":
break;
}
}
原理应该是相同的.
protected override CreateParams CreateParams
{
get
{ CreateParams cp = base.CreateParams;
cp.Style = cp.Style | 0x20000;
return cp;
}
}
这个方法比较经典,有谁能解释一下吗?现在只剩下窗口层次的问题,再说明一下:
我的程序里有两个窗口a和b,现在如果打开了另外的一程序c窗口(非本程序窗口,比如说一个word文档),c不去最大化,这时候点一下a和b中的任何一个那c就回夹在a和b的中间,这样是很不好看的,怎么样让a和b同时处于最顶层或最底层呢,可能有人想用激活a和b其中一个窗口的时候,再让a和b中的另一个也到前边来,但这样的话,我试了一下,会造成a和b中有菜单栏的那一个菜单不再可用,再就是不能拖动(我的程序是无标题栏的),不知道为什么,欢迎高手指点!