Einzelnen Beitrag anzeigen

dust258

Registriert seit: 18. Aug 2008
62 Beiträge
 
#2

Re: MouseInClient über einer Scrollbar, geht das überhaupt?

  Alt 15. Mär 2010, 10:51
Ähhh, ja...
Da sitze ich stundenlang davor, und in dem Moment in dem ich den Thread abschicke fällt mir eine Lösung ein (mal wieder...)

Ich habe einfach die Mausposition des Clienten bestimmt und schon geht es:

Delphi-Quellcode:
  fBMouseInClient := false;
  for i := ComponentCount-1 downto 0 do
  begin
    if (Components[i].ClassType = TAdvPanel) and (Components[i] as TAdvPanel).MouseInClient then
      fBMouseInClient := true
    else
    if (Components[i].ClassType = TJvNavPanelHeader) and (Components[i] as TJvNavPanelHeader).MouseInClient then
      fBMouseInClient := true
    else
    if (Components[i].ClassType = TJvRichEdit) and (Components[i] as TJvRichEdit).MouseInClient then
      fBMouseInClient := true
    else
    if (Components[i].ClassType = TJvRichEdit) and
        (Mouse.CursorPos.X>(Components[i] as TJvRichEdit).ClientOrigin.x) and
        (Mouse.CursorPos.X<((Components[i] as TJvRichEdit).ClientOrigin.x + (Components[i] as TJvRichEdit).Width)) and
        (Mouse.CursorPos.Y >(Components[i] as TJvRichEdit).ClientOrigin.Y) and
        (Mouse.CursorPos.Y<((Components[i] as TJvRichEdit).ClientOrigin.Y + (Components[i] as TJvRichEdit).Height)) then
      fBMouseInClient := true;
  end;
  Result := fBMouseInClient;
Danke und sorry fürs Spammen
  Mit Zitat antworten Zitat