通过API可以实现,具体忘了,不好意思,你可以去查查

解决方案 »

  1.   

    假设Form1是主窗体
    Form2.Owner = Form1
      

  2.   

    楼上的"有模式"或在每次在别的窗体的LOAD事件时调用
    FORM2.(前置的那个方法)---单词让了..,..
    偶这种门外汉用的时候才查MSDN
    ....
      

  3.   

    Form2.ShowDialog();
    显然不合要求。这样不能操作主窗口体的。
      

  4.   

    我有一个办法,可能大家会觉得比较菜,但我是这样做的,应该算是一种模拟效果。
    首先,定义一个应用程序的静态类,然后在该类中添加一个属性,该属性的数据类型是System.Windows.Forms.Form,然后当客户第一次打开该窗体的时候,给这个静态类的这个属性赋值为打开的这个窗体;当然打开的这个窗体一定不能是模式窗口(即不能用ShowModelDialog()打开该窗体),当你点击夫窗口的一个按钮以后,在事件中添加Form2.Activate()就OK了。
    这样这个窗体会永远在最前面,当然不会影响其它的应用程序窗体的优先级。
      

  5.   

    storm97,can you tell clearly....
    thanks......
    and up Form2.ShoeDialog dosen't good way for me to solve my problem
    thanks for lots...
      

  6.   

    你不需要使用Form2.ShowDialog(),只需要使用Form2.Show()就行了。
    我的意思是用一个应用程序全局变量来存放这个Form2窗体,他的父窗体可以是任意一个,
    当你要打开Form2的时候,先去静态类里面查看那个存放Form2的属性是否为Null,如果不是,你可以从静态类来得到Form2的一个实体,再掉用这个实体的Activate()方法,这样的话就能够保证你的程序里面是中只有一个Form2的实体。
      

  7.   

    楼主的意思是既要让Form2一直显示在Form1上面,同时Form1还可以操作?
    但是我觉得这样做有什么实用价值吗?(不好意思,兄弟我比较愚钝)
      

  8.   

    为什么非要窗体呢,你是想要达到Photoshop里的工具箱或功能面板那种效果吗?
      

  9.   

    TO:91bct(菠菜)当然有它自身的用处了。
      

  10.   

    Form2.Owner = Form1;
    Form2.Show;
      

  11.   

    Imports Microsoft.VisualBasic.CompatibilityVB6.ShowForm(Me,0)