我建立了两个窗体,一个MDI和一个子窗体,MDI上有一个按钮,点击后便可弹出子窗体。但我想只让它显示一个子窗体,也就是说当子窗体显示出来后,再点击按钮就不会再显示,只有当我关闭子窗体(即当前没有显示子窗体的情况下)点击按钮才出现,怎么办?
  我用的方法如下:
  将子窗体实体保存至一个窗体变量,点击MDI上的按钮时,判断该变量的Visible值,若为true,则激活子窗体,若为false,则调用show()方法显示。
  但出现问题是:
  当子窗体显示出来时,点击按钮确实可以把子窗体激活,但如果关闭子窗体后,再点击按钮它无法显示出来。为什么?
  请各位指点指点!谢谢!!

解决方案 »

  1.   

    我的做法是这样的:
    在点击按钮时先检查该子窗体是否可获得焦点,如果能,表示子窗体存在,则调用focus();否则先将子窗体实例化再显示
      

  2.   

    to hdt(倦怠) :
        我在子窗体的Closing和Closed两个事件中都试了,没有用啊!
      

  3.   

    也就是说,如果子窗体关闭后,再调用其Show()方法,也无法显示出来,我还把它的Visible设为了true,还是无法显示!晕啊~~~