Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Problem mit FindComponent (https://www.delphipraxis.net/201342-problem-mit-findcomponent.html)

Blackpit 13. Jul 2019 21:42

Problem mit FindComponent
 
Hallo,
kann mir jemand sagen, warum das nicht geht?
Delphi-Quellcode:
      While not mtdata.Eof do
       Begin
         with TVCheckListBox(FindComponent('lst_ausstattung' + IntToStr(CAT_ID -2))) do
           begin
            //  showmessage(mtData.FieldByName('Bezeichnung').asstring); // funktioniert
             Items.Add := mtData.FieldByName('Bezeichnung').AsString; //  <= "Ungenügende Parameter" ??
           end;
         mtdata.Next;
        end;
Bin Ratlos?

EWeiss 13. Jul 2019 21:45

AW: Problem mit FindComponent
 
Delphi-Quellcode:
Items.Add(mtData.FieldByName('Bezeichnung').AsString);
?

gruss

DieDolly 13. Jul 2019 21:46

AW: Problem mit FindComponent
 
Versuch mal
Delphi-Quellcode:
Items.Add(mtData.FieldByName('Bezeichnung').AsString);


Als Tipp noch, schmeiß dieses verpöhnte with raus!

EWeiss 13. Jul 2019 21:48

AW: Problem mit FindComponent
 
Zitat:

Zitat von DieDolly (Beitrag 1436688)
Versuch mal
Delphi-Quellcode:
Items.Add(mtData.FieldByName('Bezeichnung').AsString);


Als Tipp noch, schmeiß dieses verpöhnte with raus!

Doppelt gemoppelt hält besser ;)

gruss

Blackpit 13. Jul 2019 21:52

AW: Problem mit FindComponent
 
DANKE!
Man sollte doch mal schluss machen;)
Wie sollte es ohne with gehen?

EWeiss 13. Jul 2019 21:53

AW: Problem mit FindComponent
 
Zitat:

Funktioniert, gibt es eine Erklärung dafür?
Items.Add(.. erwartet einen Parameter

Zitat:

Zitat von Blackpit (Beitrag 1436690)
gleicher Fehler
Wie sollte es ohne with gehen?

Delphi-Quellcode:
TVCheckListBox(FindComponent('lst_ausstattung' + IntToStr(CAT_ID -2))).Items.Add(mtData.FieldByName('Bezeichnung').AsString);


gruss

Blackpit 13. Jul 2019 22:15

AW: Problem mit FindComponent
 
Danke, konsequente OO;)

EWeiss 13. Jul 2019 22:28

AW: Problem mit FindComponent
 
Zitat:

Zitat von Blackpit (Beitrag 1436694)
Danke, konsequente OO;)

Das Problem bei With es schleichen sich sehr schnell Fehler ein zudem kann man ohne besser debuggen..

gruss

jaenicke 14. Jul 2019 07:57

AW: Problem mit FindComponent
 
So hintereinander gehängt ist es nicht mehr so gut lesbar. So sieht es so ähnlich aus wie mit with, nur besser lesbar (ab Delphi 10.3, davor muss die Variable vorher deklariert werden):
Delphi-Quellcode:
       while not mtdata.Eof do
       begin
         var CurrentListBox := TVCheckListBox(FindComponent('lst_ausstattung' + IntToStr(CAT_ID -2)));
         CurrentListBox.Items.Add(mtData.FieldByName('Bezeichnung').AsString);
         mtdata.Next;
       end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:14 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