向windows的菜单那样,A->A1->A11,鼠标放在指定的对象,弹出相应窗体对象。当鼠标不再A、A1、A11 这些有关联的窗体上的时候,自动关闭A、A1、A11 三个对象。
  比如:鼠标进入某个窗体的按钮B上,自动弹出新窗体F;鼠标在窗体F1上某个按钮B1上,自动弹出新窗体F1,依次类推。
在C#的Form 中能实现吗,有啥子思路,请指点。  
  

解决方案 »

  1.   

    捕捉按钮B的 MoveEnter 事件, 在事件中:
    F f = new F();
    f.ShowDialog(); 或 f.Show();
    就行了。
      

  2.   

    menuStrip那样的?在按钮的MouseEnter和MouseLeave事件中写F.Show();F.Close();能满足要求么?
      

  3.   

    试过了MouseEnter、MouseLeave事件,如果只是在按钮B上操作,弹出、关闭窗体F,那是每得问题。
    但是在按钮B上操作,弹出窗体F,当我把鼠标移到F上时,按钮B不能关闭!
    不知道有啥子好办法,windowsAPI也看了很多,没有清晰思路。
    谢谢各位!!
      

  4.   

    你是这么写的么?
    MouseEnter是按钮B的事件,进入如果F不存在就弹出F
    MouseLeave是窗体F的事件,如果有子窗体弹出如F1,就添加一个子窗体是否存在的判断,存在就不关闭,不存在就关闭