把窗体的颜色变暗一点,像Winamp就是这样做的。

解决方案 »

  1.   

    在Form上摆一个LabelPrivate Sub Form_Deactivate()
        Label1.BackColor = &H8000000C
        Label1.Refresh
    End Sub
      

  2.   

    Deactivate()是什么作用呀?我失去焦点的时候怎么知道?
      

  3.   

    每个控件都有lostfocus,gotfocus事件和setfocus方法,针对他们编程会实现你的想法
      

  4.   

    我已经解决了,为了大家遇见同样的问题,
    呵呵,我就简单的 说明一下把,有两个方面
    1,就是我的窗口失去焦点时的判断
              设置一个Timer控件来事实的检查当前的活动窗口,并得到他的句柄
              然后这个句炳跟我的窗体的句炳比较,这里只是判断不一样,然后做
                                                   不一样的时候的事件。
                         
    2。就是我的窗口得到焦点的时候
              因为,我的窗体能得到焦点,肯定在我的窗体上发生什么事件了,
              比如:鼠标点击拉,键盘按下了等等,所以不需要判断。
              直接做得到焦点是后的事情就行了。
    得到当前句柄的Win32 API:  GetActiveWindow() 函数
    声明如下:
    Declare Function GetActiveWindow Lib "user32" Alias "GetActiveWindow" ()As long 
    运用时定义一个变量dim hHwnd as long
    然后:hHwnd=GetActiveWindow()
    之后的hHwnd的值就是当前,活动窗口的 句柄。
    可以利用这个句柄,可以做很多事情呀。比如:关闭那个窗体呀,改变窗体的名字呀,。。