这对象也许是Button、checkbox、Form……

解决方案 »

  1.   

    什么意思?
    是不是只关心鼠标单击这个动作?那不是要捕获事件吗?
    这样行不行,在每个控件的Click中都条用要处理的过程,将Sender发过去就行了。
      

  2.   

    在那个被单击对象的CLICK事件里不是有sender吗?
      

  3.   

    对象的click事件中的Sender参数进行转化
    如:
    TButton(sender).Handle
    就能获得句柄
      

  4.   

    同意楼上的。但如果还不能满足楼主的要求,那么建议:
    参阅Win32 API:WindowFromPoint即可搞掂。(不好意思,俺也是最近刚知道的。现炒现卖!)
    此为拙见,祈为见谅。
      

  5.   

    再或者,
    if Sender is TWinControl then
      H := TControl(Sender).Handle
      

  6.   

    OnClick事件都有一个参数Sender,这个就是被点击对象的入口指针(也就是被点击对象),所以在单击鼠标的事件这样作就可以了:
    var
      H:THandle;
    procedure Form1.SomeObjectClick(Sender:TObject);
    begin
      H:=(Sender as TControl).Handle;
    end;
      

  7.   

    GetCursorPos(ptCursor);  //获取鼠标位置
    hWndOver := WindowFromPoint(ptCursor);  //获取鼠标下控件的句柄
      

  8.   

    agree with zfpcb(我是你的传说)