千千静听的窗口,大多数朋友应该很清楚:一个窗口隐藏或显示,其它窗口也会跟着隐藏或显示,这个容易实现。现在的问题是,当第三个窗口出现的时候,如何使它的层叠层次在刚才的两个之上或之下呢,也就是不会出现在开始的两个中间,再就是,如果设置标题栏为none,那么,如何让点击任务栏的时候象有标题栏的时候那样最大化或最小化呢?望高手能够指点!

解决方案 »

  1.   

    这两个问题都比较简单,你可以加我的QQ聊聊:6570858,注明CSDN。
      

  2.   

    up^
    自己看看资料就OK啦!
      

  3.   


    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;   
      }   
      }   
     
      

  4.   

    zzxap说的是mdi程序,现在的问题是程序本身不是mdi的,想必大家用过千千静听,看一下就知道了,欢迎高手来解决上题!我觉得这是一个难点,目前还未解决!
      

  5.   

    MFC那里可以通过在系统菜单GetSystemMenu(NULL),然后再AppendMenu最大化,最小化两个选顶来实现,c#嘛,就不知道了.
    原理应该是相同的.
      

  6.   

    系统菜单的问题已经在另一个贴子中由runffer_yang解决,解决方法如下:
      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中有菜单栏的那一个菜单不再可用,再就是不能拖动(我的程序是无标题栏的),不知道为什么,欢迎高手指点!
      

  7.   

    许多MVP都不上CSDn了,都在MSDN上混呢,并且天天能看到,以后发贴就免专家了吧~
      

  8.   

    MSDN论坛怎么上?地址是什么?我也去爽爽