var
  ClassName: PChar;
  ptCursor: TPoint;
  hWndOver: HWND;
  Text: PChar;
begin
  GetCursorPos(ptCursor);
  hWndOver := WindowFromPoint(ptCursor);
  GetMem(ClassName, 100);
  GetMem(Text, 255);
  try
    GetClassName(hWndOver, ClassName, 100);
    SendMessage(hWndOver, WM_GETTEXT, 255, LongInt(Text));
    Canvas.FillRect(Rect(5, 20 , PreClassLength + 20, 40));
    Canvas.FillRect(Rect(5, 40 , PreTextLength + 20, 60));
    PreClassLength := Canvas.TextWidth(ClassName);
    PreTextLength := Canvas.TextWidth(Text);
    if PreClassLength > PreTextLength then
      Width := Canvas.TextWidth(ClassName) + 20
    else
      Width := Canvas.TextWidth(Text) + 20;
    Canvas.TextOut(5, 20, string(ClassName));
    Canvas.TextOut(5, 35, string(Text));
  finally
    FreeMem(ClassName);
    FreeMem(Text);
  end;
end;

解决方案 »

  1.   

    var
      ClassName: PChar;
      ptCursor: TPoint;
      hWndOver: HWND;
      Text: PChar;
    begin
      GetCursorPos(ptCursor);
      hWndOver := WindowFromPoint(ptCursor);
      GetMem(ClassName, 100);
      GetMem(Text, 255);
      try
        GetClassName(hWndOver, ClassName, 100);
        SendMessage(hWndOver, WM_GETTEXT, 255, LongInt(Text));
        Canvas.FillRect(Rect(5, 20 , PreClassLength + 20, 40));
        Canvas.FillRect(Rect(5, 40 , PreTextLength + 20, 60));
        PreClassLength := Canvas.TextWidth(ClassName);
        PreTextLength := Canvas.TextWidth(Text);
        if PreClassLength > PreTextLength then
          Width := Canvas.TextWidth(ClassName) + 20
        else
          Width := Canvas.TextWidth(Text) + 20;
        Canvas.TextOut(5, 20, string(ClassName));
        Canvas.TextOut(5, 35, string(Text));
      finally
        FreeMem(ClassName);
        FreeMem(Text);
      end;
    end;
      

  2.   

    首先建立一个popmenu,然后以下的代码就可以告诉你刚才右击的对象名称:
    PopupMenu1.PopupComponent.ClassName
      

  3.   

    在Win95中,鼠标的右键起到了很大的作用,但是,由于历史的原因,对于右键的使用即使在Delphi中,也还不够有效,下面的程序可以告诉你如何知道刚才鼠标右击的对象名称。首先建立一个popmenu,然后以下的代码就可以告诉你刚才右击的对象名称:
    PopupMenu1.PopupComponent.ClassName
      

  4.   

    PopupMenu1.PopupComponent.ClassName