Einzelnen Beitrag anzeigen

Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.284 Beiträge
 
Delphi 12 Athens
 
#1

BorderColor eines TWinControl-Descendants ändern

  Alt 16. Sep 2013, 10:42
Moin!

Ich leite mir von TWinControl eine Klasse ab und verpasse der mit folgendem Code einen Rahmen:
Delphi-Quellcode:
procedure TmyClass.MakeBorder;
var
  Style: LongInt;
begin
  Style:= GetWindowLong(Self.Handle, GWL_STYLE);
  Self.BorderWidth:= 1;
  SetWindowLong(Self.Handle, GWL_STYLE, (Style or WS_BORDER));
end;
Die Prozedur wird über WndProc und WM_PAINT aufgerufen. Das funktioniert auch soweit. Nur dummerweise ist der Rahmen in einer extrem hellen Farbe, sodass er kaum auffällt (siehe Bild). Ein bisschen dunkler wäre gut, ein SubClassing von EDIT ideal. Nur wüßte ich im Moment nicht wie das machen ist.

Grüße
Cody
Miniaturansicht angehängter Grafiken
image11.png  
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat