小弟我想让子窗口FORM1始终在FORM2之上,为什么这样没有用啊(注意是子窗口,不是普通窗口)

我想让子窗口FORM1始终在FORM2之上,为什么这样没有用啊(注意是子窗口,不是普通窗口)?
Private   Declare   Function   SetWindowPos   Lib   "user32 "   (ByVal   hwnd   As   Long,   ByVal   hWndInsertAfter   As   Long,   ByVal   x   As   Long,   ByVal   y   As   Long,   ByVal   cx   As   Long,   ByVal   cy   As   Long,   ByVal   wFlags   As   Long)   As   Long
Private   Const   SWP_NOSIZE   =   &H1
Private   Const   SWP_NOMOVE   =   &H2
Private   Const   HWND_TOPMOST   =   -1
Private   Const   HWND_NOTOPMOST   =   -2

Private   Sub   MDIForm_Load()
        Load   Form1
        Form1.Show
       
        Load   Form2
        Form2.Show
       
        SetWindowPos   Form1.hwnd,   HWND_TOPMOST,   0,   0,   0,   0,   (SWP_NOSIZE   Or   SWP_NOMOVE)
End   Sub



------解决方案--------------------
以下为借鉴:

MDIFORM1为MDI窗体;FORM1、FORM2为MDI子窗体;
FORM3不是MDI子窗体(我们要使之总在顶端)

那么只要在你希望弹出FORM3的地方用
Form3.show 0,MDIFORM1
就完了。
这样FORM3不仅始终在MDIFORM1的上面,而且也在
所有的MDI子窗体上面。

如果你的工程中不只这一个非MDI子窗体,那就回到了
与SDI相同的问题上来了。
------解决方案--------------------
Form1.show , Form2
这样调用

程序源码、学习资料网站:
http://www.egooglet.com

交流论坛:
http://bbs.j2soft.cn