就像qq那样,当鼠标不在窗体上的时候,窗体自动收缩!

解决方案 »

  1.   

    呵呵,这还不简单就是设置窗体在屏幕的某个位置其可见属性就是为=false,然后在某个位置鼠标移动到了上面就可见属性为=true。呵呵,做做看吧。
      

  2.   

    鼠标不在窗体上的时候你就 For一个循环,修改主窗口的Height属性,别忘了修改后要立刻Application.ProcessMessage。
    至于如何检测鼠标是否在工作区外。你可以拦截WM_NCMOUSEMOVE事件。
      

  3.   

    Eastunfail(恶鱼杀手)
    谢谢,但是具体怎么拦截!?给个例子好不好!?
      

  4.   

    我这有个源代码,将窗体从Appbar继承,然后稍微设置一下就行了,你要的话,给我留短消息,将EMail发给我,我给你发过来
      

  5.   

    让他自动收缩要改变他的height属性
    不会拦截WM_NCMOUSEMOVE事件,你也可以在应用程序中检测鼠标是否在你的应用程序中,就是mousemove事件,其中还有一些细节,
      

  6.   

    procedure FormNCMouseMove(var msg:TMSG);message WM_NCMOUSEMOVE;然后你再填代码。如果鼠标移出去了,将无法收到mousemove消息。
      

  7.   

    或者用Timer控件。不停的判断鼠标是否在工作窗口里面
      

  8.   

    procedure FormNCMouseMove(var msg:TMSG);message WM_NCMOUSEMOVE;
    里头是不是填自动收缩窗体的代码?