Einzelnen Beitrag anzeigen

MicMic

Registriert seit: 26. Mai 2018
296 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#13

AW: Scrollbar Design

  Alt 14. Jun 2018, 19:20
Delphi-Quellcode:
{ TMyScrollBar }
//******************************************************************************
constructor TMyScrollBar.Create(AOwner: TComponent);
begin
  inherited;
  FHBrush := CreateSolidBrush(ColorToRGB(FBackColor));
end;

//******************************************************************************
destructor TMyScrollBar.Destroy;
begin
  DeleteObject(FHBrush);
  inherited;
end;

//******************************************************************************
procedure TMyScrollBar.SetBackColor(const Value: Tcolor);
begin
  FBackColor := Value;
  DeleteObject(FHBrush);
  FHBrush := CreateSolidBrush(ColorToRGB(FBackColor));
end;

//******************************************************************************
procedure TMyScrollBar.WMCtlColor(var Message: TWMCtlColorScrollbar);
begin
  Message.Result := FHBrush;
end;
Ungetestet, gefunden bei SO. Damit ist sollte das Speicherleck zu sein.

Bereichsprüfungsfehler? Zeige doch mal auch was Du in der Message Procedure anstellst ?! Bei mir klappen alle Varianten.
Nochmals Danke fürs raussuchen. Aber wie gesagt, es geht ja nur zum Teil mit den Farben.
Das mit DeleteObject hatte ich sowieso schon gemacht. Das mit dem Fehler "Bereichsprüfung"... es war noch schlimmer und das alles lag am VCL-Stil. Meine Anwendung ist ja schon abgestürzt, nur wenn ich ein TEdit hinzufügte. Ich hatte mir nämlich ein VCL-Stil nur mit den ScrollBar-Daten gemacht. Das war dann einfach zu wenig und hier und da meckerte dann Delphi. Wichtig war StyleElements für die Komponenten entsprechend abzustellen. Egal jetzt... mit einer TScrollBar geht es jetzt.

Michael
  Mit Zitat antworten Zitat