Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Poupmenü hat einen Border (https://www.delphipraxis.net/75084-poupmenue-hat-einen-border.html)

Nils_13 14. Aug 2006 09:43


Poupmenü hat einen Border
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,

ich benutze OwnerDraw. Das Problem ist, dass das Popupmenü einen hässlichen Border besitzt (siehe Screenshot). Wie kann ich das verhindern? Diesen Code benutze ich bisher:
Delphi-Quellcode:
procedure TfrmMain.pmTrayDrawItem(Sender: TObject; ACanvas: TCanvas;
  ARect: TRect; Selected: boolean);
var ACaption: TCaption;
begin
  ACaption := TMenuItem(Sender).Caption;
  with ACanvas do
  begin
    if Selected then
    begin
      Brush.Color := pmTrayOver;
      Font.Color := pmTrayOverFont;
    end else
    begin
      Brush.Color := pmTrayBg;
      Font.Color := pmTrayFont;
    end;
    FillRect(ARect);
    ARect.Left := ARect.Left + 5;
    DrawText(Handle, PChar(acaption), Length(acaption),
       aRect, DT_SINGLELINE or DT_VCENTER);
  end;
end;
Viele von euch werden diesen Rand höchstwahrscheinlich nicht haben, denn es ist der Windowsskin, aber das Programm wird komplett geskinnt, deshalb sollte der Border durch ein kleines Rechteck drumrum ersetzt werden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:39 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz