Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by stahli,
2. Okt 2010
Die Frage war nach TObjectList, die vereinfacht ggf. noch ein paar Dinge.
Aber TList reicht auch.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by stahli,
2. Okt 2010
In Delphi 3 wird es bestimmt schon TList geben.
Da kannst Du nach dem Erzeugen der Panels diese anhängen (anstatt eines Arrays).
PanelList: TList;
...
PanelList := TListe.Create;
...
//für jedes erzeugte Panel:
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by stahli,
2. Okt 2010
Ach so, Du willst es weiterhin als Ereignisbehandlung im Formular lassen...
Dann musst Du vorhaer allen Panels die gleiche Ereignisbehandlung zuweisen und Dich dann auf den Auslöser des Ereignisses beziehen:
procedure TForm1.PanelsMouseOver(Sender: TObject);
var
MyPanel: TPanel;
begin
if Sender is TPanel then
begin
MyPanel := (Sender as TPanel);
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by stahli,
2. Okt 2010
Versuche mal, ob Dir Visible := False; reicht. Dann kannst Du Unsichtbare Panels später freigeben und aus dem Array entfernen.
Es ist sicherer, die Panels nur von außen zu zerstören (FreeAndNil(MyPanel);).
Ach so: Und zu Freigeben immer Free benutzen statt Destroy.