[erledigt] Stringlist an Funktion übergeben und auf Count zugreifen

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
Benutzeravatar
kralle
Lazarusforum e. V.
Beiträge: 994
Registriert: Mi 17. Mär 2010, 14:50
OS, Lazarus, FPC: Linux Mint 20 , FPC 3.3.1 , Lazarus 2.1.0 -Win10 & XE7Pro
CPU-Target: 64Bit
Wohnort: Bremerhaven
Kontaktdaten:

[erledigt] Stringlist an Funktion übergeben und auf Count zugreifen

Beitrag von kralle »

Moin,

Code: Alles auswählen

function fill_stringgrid(Spalte:integer; Ergebnis: TStringList);
   var  i: byte;
begin
for i:= 1 to Ergebnis. xxxxx
end;      
Ich möchte eigentlich beim xxxxx auf die Eigenschaft "Count" der Stringlist zugreifen, aber die wird nach dem Punkt nicht angeboten. Wie komme ich an den entsprechenden Wert ohne ihn vor dem Aufruf der Funktion zu ermittel und zu übergeben?

Gruß Heiko
Zuletzt geändert von kralle am Sa 17. Feb 2024, 17:02, insgesamt 1-mal geändert.
OS: Manjaro Linux, Debian und Windows 10
FPC-Version: 3.2.2 , Lazarus 3.0
+ Delphi XE7SP1

wp_xyz
Beiträge: 4895
Registriert: Fr 8. Apr 2011, 09:01

Re: Stringlist an Funktion übergeben und auf Count zugreifen

Beitrag von wp_xyz »

Ist der Zwischenraum nach dem Punkt Absicht? Außerdem hat deine Funktion keinen Ergebnis-Typ.

Und bei mir klingeln die Alarmglocken, wenn beim Zugriff auf eine Liste als erster Index die Eins benutzt wird. Kann richtig sein, ist aber meistens falsch.
Zuletzt geändert von wp_xyz am Sa 17. Feb 2024, 13:38, insgesamt 1-mal geändert.

Benutzeravatar
fliegermichl
Lazarusforum e. V.
Beiträge: 1436
Registriert: Do 9. Jun 2011, 09:42
OS, Lazarus, FPC: Lazarus Fixes FPC Stable
CPU-Target: 32/64Bit
Wohnort: Echzell

Re: Stringlist an Funktion übergeben und auf Count zugreifen

Beitrag von fliegermichl »

Der count wird nicht angeboten weil eine Function ein Ergebnis zurückliefern muß und nicht angegeben wurde.
oder du machst eine procedure draus.

Edit: wp_xyz war schneller.

Mathias
Beiträge: 6210
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Stringlist an Funktion übergeben und auf Count zugreifen

Beitrag von Mathias »

Code: Alles auswählen

for i:= 1 to Ergebnis. xxxxx
Da ist ein Knall vorprogrammiert.

Besser so:

Code: Alles auswählen

for i:= 0 to Ergebnis.count - 1
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
kralle
Lazarusforum e. V.
Beiträge: 994
Registriert: Mi 17. Mär 2010, 14:50
OS, Lazarus, FPC: Linux Mint 20 , FPC 3.3.1 , Lazarus 2.1.0 -Win10 & XE7Pro
CPU-Target: 64Bit
Wohnort: Bremerhaven
Kontaktdaten:

Re: Stringlist an Funktion übergeben und auf Count zugreifen

Beitrag von kralle »

Moin,
Mathias hat geschrieben:
Sa 17. Feb 2024, 13:36

Code: Alles auswählen

for i:= 1 to Ergebnis. xxxxx
Da ist ein Knall vorprogrammiert.
Das ist mir klar.
Mathias hat geschrieben:
Sa 17. Feb 2024, 13:36
Besser so:

Code: Alles auswählen

for i:= 0 to Ergebnis.count - 1
Hier ist das Problem. Ich tippe "Ergebnis." und die Autoergänzung bietet "Count" nicht an.

Gruß Heiko
OS: Manjaro Linux, Debian und Windows 10
FPC-Version: 3.2.2 , Lazarus 3.0
+ Delphi XE7SP1

Benutzeravatar
theo
Beiträge: 10500
Registriert: Mo 11. Sep 2006, 19:01

Re: Stringlist an Funktion übergeben und auf Count zugreifen

Beitrag von theo »

kralle hat geschrieben:
Sa 17. Feb 2024, 13:41
Hier ist das Problem. Ich tippe "Ergebnis." und die Autoergänzung bietet "Count" nicht an.
Wie gesagt wurde: Deine Funktion hat keinen Rückgabeparameter, deshalb ist das falsch und so kommt das System aus dem Tritt.
Mach eine richtige Funktion draus oder eine Procedure, dann klappt's auch mit der Code Completion.

Mathias
Beiträge: 6210
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Stringlist an Funktion übergeben und auf Count zugreifen

Beitrag von Mathias »

Hier ist das Problem. Ich tippe "Ergebnis." und die Autoergänzung bietet "Count" nicht an.
Bekommst du keinen syntax-Error, auch wen do die ganze for-Schleife weglässt ?
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
kralle
Lazarusforum e. V.
Beiträge: 994
Registriert: Mi 17. Mär 2010, 14:50
OS, Lazarus, FPC: Linux Mint 20 , FPC 3.3.1 , Lazarus 2.1.0 -Win10 & XE7Pro
CPU-Target: 64Bit
Wohnort: Bremerhaven
Kontaktdaten:

Re: Stringlist an Funktion übergeben und auf Count zugreifen

Beitrag von kralle »

Danke, für Eure Zeit und Tipps.

Die Lösung war einfach: aus function wurde procedure und dann funktioniert das auch mit der Autoergänzung.
Warum ich das versucht habe, als function zu machen, weiß ich nicht :oops: :oops:

Gruß Heiko
OS: Manjaro Linux, Debian und Windows 10
FPC-Version: 3.2.2 , Lazarus 3.0
+ Delphi XE7SP1

Antworten