![]() |
Farben mehrerer Panels Ändern
Versuche das grad so was zu einer Exeption führt
Delphi-Quellcode:
procedure TEditor.ObenAlleAnClick(Sender: TObject);
var I : Integer; begin For I := 2 to 10 do Begin TPanel(I).Color := CLBlack; End; end; |
Re: Farben mehrerer Panels Ändern
hat sich erledigt
Delphi-Quellcode:
procedure TEditor.ObenAlleAnClick(Sender: TObject);
var I : Integer; begin For I := 2 to 10 do Begin TPanel(FindComponent('Panel' + IntToStr(I))).Color := clBlack; End; end; |
Re: Farben mehrerer Panels Ändern
Delphi-Quellcode:
ich will Eine Procedur für 27 Panels nutzen aber wieder der fehler mit der Exeption
Procedure TEditor.PanelClick(Sender: TObject);
Begin with Sender as TPanel do begin case Tag of 2..10,12..20,22..30: Begin if TPanel(FindComponent('Panel' + InttoStr(Tag))).Color = clBtnFace then TPanel(FindComponent('Panel' + InttoStr(Tag))).Color := clBlack else TPanel(FindComponent('Panel' + InttoStr(Tag))).Color := clBtnFace; End; end; end; End; |
Re: Farben mehrerer Panels Ändern
:glaskugel: Fehlerbeschreibung?
:spin: EDIT: Ich vermute, dass du nur die Farbe des angeklickten Panels swappen(zb blau<->rot) willst. Wenn dies der Fall ist, dann reicht es schon aus, den Sender statt FindComponent() zu verwenden! Dazu würde ich einfach ne Procedure ~PanelsClick(Sender: TObject); definieren und beim Programmstart allen Panels -> OnClick via Findcomponent die zuvor definierte Procedure zuweisen. |
Re: Farben mehrerer Panels Ändern
Liste der Anhänge anzeigen (Anzahl: 1)
Die Markierten Panels sollen auf OnClick Schwarz werden bzw. wenn schon aktiviert wieder Grau
|
Re: Farben mehrerer Panels Ändern
Danke das wars
|
Re: Farben mehrerer Panels Ändern
findcomponent zu verwenden und ohne das Objekt vor dem Zugriff zu prüfen ist sehr gefährlich...
Gruß Frank |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:06 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