Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Lazarus (IDE) (https://www.delphipraxis.net/81-lazarus-ide/)
-   -   Wie mehrere Edits auf Readonly setzen? (https://www.delphipraxis.net/188866-wie-mehrere-edits-auf-readonly-setzen.html)

AlexII 14. Apr 2016 13:39


Wie mehrere Edits auf Readonly setzen?
 
Hallo,

ich habe auf einem Panel viele Edits, CheckBoxe und ComboBoxe. Nun möchte ich diese in einer Schleife auf Readonly setzen und umgekehrt. Wie macht man das am besten? Wie kann ich die Kommponenete in einer Schleife ansprechen?

Danke!

Stevie 14. Apr 2016 13:44

AW: Wie mehrere Edits auf Readonly setzen?
 
Delphi-Referenz durchsuchenTWinControl.ControlCount
Delphi-Referenz durchsuchenTWinControl.Controls

v2afrank 14. Apr 2016 13:46

AW: Wie mehrere Edits auf Readonly setzen?
 
Ich hätte als Stichwort FindComponent angegeben

himitsu 14. Apr 2016 13:58

AW: Wie mehrere Edits auf Readonly setzen?
 
Hat Lazarus auch einen Components-Enumerator an TComponent?

Delphi-Quellcode:
for C in Self do
  if C is TEdit then
    ...

PS: FindComponent ist für ein Control, dessen Namen man kennt. (gut, man könnte die Namen z.B. in einem Array/Liste speichern und Diese dann durch gehen)

Delbor 14. Apr 2016 14:16

AW: Wie mehrere Edits auf Readonly setzen?
 
Hi zusammen

Zitat:

Ich hätte als Stichwort FindComponent angegeben
Findcomponent iteriert bei jedem Aufruf durch alle Komponenten des angegeben Containers (hier des Panels) und findet dabei jeweils eine Komponente. Um neun von z.B. 20 Edits Readonly zu stellen, muss Findcomponent neunmal aufgerufen werden und iteriert neunmal durch alle Komponenten. Das sind mindestens 40 Stück, wenn zu jedem Edit ein Label gehört. Und mehr als 40, wenn sich auf dem bewussten Container (dem Panel) noch nicht sichtbare Komponenten (TTimer u.dgl.) befinden.
Besser ist da ein Array of TEdit. Jetzt kann jedes Edit über seine Arrrayposition angesprochen werden.
Die Tag-Eigenschaft eignet sich, um ein Edit über einen Integer anzusprechen(Case TEdit.Tag of).
Und das ultimativste dürfte wohl eine Objectliste sein - die gibt ihre Objekte bei Bedarf selbst frei.

Gruss
Delbor


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:37 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz