Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - panels färben
OcculsuInfernuM - Sa 06.01.07 18:17
Titel: panels färben
also ich habe einen panel von dem ich gern die farbe ändern würde...
gedacht habe ich mir das per popupmenü
Delphi-Quelltext
1: 2: 3: 4:
| procedure TForm1.red1Click(Sender: TObject); begin panel1.Brush.canvas.clred end; |
aber canvas erkennt er nicht an (rot unterstrichen)
was kann man da machen
oder gibs ne andere möglichkeit das panel zu färben?
Moderiert von
Christian S.: Delphi-Tags hinzugefügt
Moderiert von
Christian S.: Topic aus Sonstiges (Delphi) verschoben am Sa 06.01.2007 um 18:20
GTA-Place - Sa 06.01.07 18:22
Ja, mit Panel1.Color := clRed; geht es auch ;-)
Gausi - Sa 06.01.07 18:33
Wobei das nicht mehr funktioniert, wenn man die Anwendung durch ein XP-Manifest im XP-Stil haben will.
Da hilft dann wohl nur selberzeichnen, und weil das Panel weder die Eigenschaft Canvas noch ein OnPaint-Event besitzt (zumindest bei Delphi7), muss man sich da ne eigene Klasse ableiten.
GTA-Place - Sa 06.01.07 18:47
Oder aber man ist klug und zieht einfach ein Shape drüber ;-)
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| var Shape: TShape; begin Shape := TShape.Create(Panel1); Shape.Parent := Panel1; Shape.Name := 'Shape'; Shape.Brush.Color := clRed; Shape.Pen.Color := clRed; Shape.Align := alClient; end; |
Freigeben nicht vergessen, oder eben schon zur Designzeit aufs Panel legen.
EDIT: Um es deutlich zu sagen: Besser ist natürlich der Vorschlag von Gausi, aber vllt. für Anfänger nicht ganz einfach. Solltest du, OcculsuInfernuM, mehre Panels färben wollen und XPManifest verwenden, dann solltest du dich an den Vorschlag von Gausi halten.
Coder - Sa 06.01.07 19:24
Gausi hat folgendes geschrieben: |
| Wobei das nicht mehr funktioniert, wenn man die Anwendung durch ein XP-Manifest im XP-Stil haben will. |
Doch.
Einfach ParentBackground auf false.
MfG
jaenicke - Sa 06.01.07 19:37
Geht aber AFAIK erst ab Delphi 2005 oder 2006...
// EDIT: Genau:
Delphi 7: ParentBackground nutzt nix
Delphi 2005: Da gehts mit ParentBackground
Delphi 2006: Da gehts auch
Ich hab das übrigens nur per Zufall bei Delphi 2005 PE herausgefunden, als ich das circa 4 Wochen hatte. Sonst wäre ich nie drauf gekommen, dass es da plötzlich geht... ;-)
OcculsuInfernuM - So 07.01.07 14:54
ok danke euch habs hinbekomen
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!