Registriert seit: 6. Aug 2010
Ort: Dornbirn
151 Beiträge
Delphi 11 Alexandria
|
AW: FillRect mit weißer Farbe funktioniert nicht!
19. Mär 2018, 09:51
Hallo,
in einer eigenen Komponente (von TSpeedButton abgeleitet) möchte ich einen blauen Rahmen mit weißem Inhalt haben.
Also habe ich im Paint der Komponente folgendes stehen:
Delphi-Quellcode:
procedure TTerminButton.Paint;
var
b, h: single;
begin
inherited;
b := Width;
h := Height;
canvas.BeginScene;
canvas.Fill.Kind := TBrushKind.Solid;
canvas.Stroke.Kind := TBrushKind.Solid;
canvas.ClearRect(RectF(0, 0, b, h), TAlphaColors.White);
canvas.Fill.Color := TAlphaColors.Blue;
canvas.Stroke.Color := TAlphaColors.Blue;
canvas.FillRect(RectF(1, 1, b - 1, h - 1), 0, 0, AllCorners, 100);
//innen
canvas.Fill.Color := TAlphaColors.White;
canvas.Stroke.Color := TAlphaColors.White;
canvas.FillRect(RectF(2, 2, b - 2, h - 2), 0, 0, AllCorners, 100);
canvas.EndScene;
aber der Hintergrund ist so grau wie das darunterliegende Panel mit einem GridPanelLayout, auf dem meine Buttons sitzen.
Nehme ich für innen eine andere Farbe (gelb, rot, etc.) funktioniert das korrekt!
Warum zum teufel funktioniert weiß nicht?
Ciao
Stefan
Hi Stefan,
füll das Weiß mit Fillrect, oder nimm als Füllfarbe mal $FFFFFFFF statt TAlphaColors.White ...
Gruß,
Peter
Peter Was mache ich, wenn ein Bär meine Frau angreift?
Nichts. Er hat sie angegriffen, soll er doch selber sehen, wie er sich verteidigt.
|
|
Zitat
|