FrmMain是主窗体,可以通过菜单打开form1,form2,form3等窗体,如何实现打开form1,当要处理其他form时,必须先关掉form1才能打开其他form?

时间:2022-09-12 13:20:53
FrmMain是主窗体,可以通过菜单打开form1,form2,form3等窗体,如何实现打开form1,当要处理其他form时,必须先关掉form1才能打开其他form?

谢谢先!

9 个解决方案

#1


        For Each m As Form In Me.MdiChildren

                If m.GetType Is f.GetType Then
                    m.Activate()
                    b = True
                    Exit For
                End If
            Next
判断 m 是否是 nothing ,如果是 close 掉,判断一下,

#2


FrmMain是主窗体,如果不是MID窗体,那就非常简单了

只要在FORM1,2,3,4显示出来的时候使用模式窗体
form1.show vbmodal


#3


理解错误,当我没说

#4


'打开菜单按钮代码
Private sub Menu1_click()
Form1.hide
Form2.Show
Form3.Show
End Sub
只在用其它窗体处理时,就调它

#5


谢谢指点,但是好像都不行
或者是我没有说清楚
工程有很多个窗体,frmmain,form1,form2,form3,....,formn
软件运行时,先启动frmmain,点击frmmain上面的菜单,可以打开其他窗体
现在的问题是,当打开form1处理完,但是没有关掉form1,就直接打开form2的时候,可以打开form2
这样屏幕下面就显示了很多form窗口,我要的是在处理form1的时候,不能再打开其他窗体,除非关掉form1退出来才能打开其他窗体

继续请教!谢谢先

#6


不知道你问的是不是这个
    
    你的意思是你完成FORM1,然后想把它隐藏起来去执行其他的FORM,但是你运行其他的FORM时,运行的还是FORM1。如果你问的是这个的话,解决的方法是:你要运行那个程序,,点击工程——工程属性——然后右边有个下拉菜单(意思是你想把那个窗体设置为当前想运行的)——保存之后就可以了。
  


  不知道是我是不是答非所问啊!!呵呵

#7


发表于:2008-11-05 21:57:156楼 得分:0 
不知道你问的是不是这个 
    
    你的意思是你完成FORM1,然后想把它隐藏起来去执行其他的FORM,但是你运行其他的FORM时,运行的还是FORM1。如果你问的是这个的话,解决的方法是:你要运行那个程序,,点击工程——工程属性——然后右边有个下拉菜单(意思是你想把那个窗体设置为当前想运行的)——保存之后就可以了。 
  


  不知道是我是不是答非所问啊!!呵呵 
====不是这个意思啊

#8


Form1.Show vbModal
就是这个吧,如果不退出form1的话,frmmain不能操作,更别提打开其它窗体了
如果是让窗体在任务栏上只显示一个的话可以把窗体的showintaskbar属性置成false

#9


zuoxingyu 、cxplqy正解,再一次感谢!

#1


        For Each m As Form In Me.MdiChildren

                If m.GetType Is f.GetType Then
                    m.Activate()
                    b = True
                    Exit For
                End If
            Next
判断 m 是否是 nothing ,如果是 close 掉,判断一下,

#2


FrmMain是主窗体,如果不是MID窗体,那就非常简单了

只要在FORM1,2,3,4显示出来的时候使用模式窗体
form1.show vbmodal


#3


理解错误,当我没说

#4


'打开菜单按钮代码
Private sub Menu1_click()
Form1.hide
Form2.Show
Form3.Show
End Sub
只在用其它窗体处理时,就调它

#5


谢谢指点,但是好像都不行
或者是我没有说清楚
工程有很多个窗体,frmmain,form1,form2,form3,....,formn
软件运行时,先启动frmmain,点击frmmain上面的菜单,可以打开其他窗体
现在的问题是,当打开form1处理完,但是没有关掉form1,就直接打开form2的时候,可以打开form2
这样屏幕下面就显示了很多form窗口,我要的是在处理form1的时候,不能再打开其他窗体,除非关掉form1退出来才能打开其他窗体

继续请教!谢谢先

#6


不知道你问的是不是这个
    
    你的意思是你完成FORM1,然后想把它隐藏起来去执行其他的FORM,但是你运行其他的FORM时,运行的还是FORM1。如果你问的是这个的话,解决的方法是:你要运行那个程序,,点击工程——工程属性——然后右边有个下拉菜单(意思是你想把那个窗体设置为当前想运行的)——保存之后就可以了。
  


  不知道是我是不是答非所问啊!!呵呵

#7


发表于:2008-11-05 21:57:156楼 得分:0 
不知道你问的是不是这个 
    
    你的意思是你完成FORM1,然后想把它隐藏起来去执行其他的FORM,但是你运行其他的FORM时,运行的还是FORM1。如果你问的是这个的话,解决的方法是:你要运行那个程序,,点击工程——工程属性——然后右边有个下拉菜单(意思是你想把那个窗体设置为当前想运行的)——保存之后就可以了。 
  


  不知道是我是不是答非所问啊!!呵呵 
====不是这个意思啊

#8


Form1.Show vbModal
就是这个吧,如果不退出form1的话,frmmain不能操作,更别提打开其它窗体了
如果是让窗体在任务栏上只显示一个的话可以把窗体的showintaskbar属性置成false

#9


zuoxingyu 、cxplqy正解,再一次感谢!