AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Komponente suchen und Caption ändern ?

Komponente suchen und Caption ändern ?

Ein Thema von Gandimann · begonnen am 1. Jan 2021 · letzter Beitrag vom 4. Jan 2021
Antwort Antwort
Seite 2 von 2     12
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
4.960 Beiträge
 
Delphi 11 Alexandria
 
#11

AW: Komponente suchen und Caption ändern ?

  Alt 2. Jan 2021, 06:28
Moin...
Zitat:
FindComponent
...was ich daran nicht mag...das "Find". Obwohl es wahrscheinlich zeittechnisch unerheblich ist, das "Find" suggeriert mir eine Suche über die gesamte Menge der Controls. Ich suche aber ungern. Ich stehe eher auf Listen wo nur die "Einträge" drin sind über die gesucht wird.

In diesem Falle wäre das eine TObjectList<TPanel> (dynamisch erzeugte Panels). Diese Liste kannst du immer durchiterieren.
Delphi-Quellcode:
for Panel in PanelList
begin
  // Caption ändern etc.
end;
Wenn du auf ein bestimmtes Panel zugreifen willst würde sich dann auch ein TObjectDicionary<(Key = Integer oder string etc.), TPanel> anbieten.

PS1:
Zitat:
ich mochte gern auf ein Form platzierte mehrere Panels(mehr als 50)
Bei dieser Variante, die scalierbar ist, müssen die Panels dynamisch erzeugt werden und nicht auf die Form geklatscht.

PS2:
Ich würde die Dictionary Variante bevorzugen. Da kann man auch das Panel in eine Klasse packen die dann zusätzliche Informationen hat. Position im Panel "Array"...oder so. So nach dem Motto: Gib mir das Panel von Reihe 2, Spalte 4.


Geändert von haentschman ( 2. Jan 2021 um 06:30 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Moombas
Moombas

Registriert seit: 22. Mär 2017
Ort: bei Flensburg
525 Beiträge
 
FreePascal / Lazarus
 
#12

AW: Komponente suchen und Caption ändern ?

  Alt 4. Jan 2021, 06:50
Moin...
Zitat:
FindComponent
...was ich daran nicht mag...das "Find". Obwohl es wahrscheinlich zeittechnisch unerheblich ist, das "Find" suggeriert mir eine Suche über die gesamte Menge der Controls. Ich suche aber ungern. Ich stehe eher auf Listen wo nur die "Einträge" drin sind über die gesucht wird.

In diesem Falle wäre das eine TObjectList<TPanel> (dynamisch erzeugte Panels). Diese Liste kannst du immer durchiterieren.
Delphi-Quellcode:
for Panel in PanelList
begin
  // Caption ändern etc.
end;
Meinst du nicht, das FindComponent eben genau das macht und alle Controls in einer entsprechenden Liste existieren?
Denn du musst ja vorher sagen, was für eine Komponente du suchst z.B. TEdit(FindComponent(...)) , was für mich darauf schließen lässt, das er auch nur eine Liste der erwarteten Komponente oder den Teilbereich einer kompletten Liste durchsucht und somit 1:1 das ist, was du manuell selber anlegst.

Aber ist halt nur eine Vermutung. Ich selber arbeite auch mit FindComponent und das Einzige, wo eine Solche (manuelle) Liste aus meiner Sicht wirklich Sinnvoll ist, wenn ich diese aus irgendwelchen Gründen komplett durcharbeiten muss.
Der Weg ist das Ziel aber man sollte auf dem Weg niemals das Ziel aus den Augen verlieren.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf