一个 VB 窗体的问题!

来源:百度知道 编辑:UC知道 时间:2024/06/01 19:33:06
建立二个 窗体 Form1 , Form2 Form1为启动窗体, Form2.Visible = False(默认不可见) 它们的默认摆放位置:Form1和Form2重叠一部分 。如何
实现 : 当单击 Form1时 Form2.Visible = True(这时可见,但不处于激活状态,并能庶挡Form1的重叠部分,这时 Form1仍处于当前激活状态状态)

? 也就是说能不能 单击Form1时, Form2.Visible = True 让Form2在Form1前面!并不处于激活状态? 也就是说Form2一出来就不处于激活状态

,但在Form1的前面!
如何让Form2一出来就不处于激活状态,但在Form1的前面?

为Form1添加一个MDIForm1子窗体。然后在Form1的代码中加入

Private Sub Form_Load()
MDIForm1.Show , Form1
End Sub

再在MDIForm1代码中加入

Private Sub MDIForm_Activate()
Form1.SetFocus
End Sub

这样以来即使三单击MDIForm1它也不会获得焦点,但是它会在Form1的前面。。。

我试过了 的。可以。。

显示Form2时,用API SetWindowPos 将Form2置前,并且在Form2的GotFocus事件里写Form1.SetFocus

From2.Show
Form1.GetFocus

用一个api可以!~

不可以.