AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Editfelder in einer For-Schleife

Ein Thema von Luckner · begonnen am 14. Jul 2015 · letzter Beitrag vom 16. Jul 2015
Antwort Antwort
Seite 1 von 2  1 2   
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#1

Editfelder in einer For-Schleife

  Alt 14. Jul 2015, 11:28
Hallo, ich habe bestimtt eine sehr triviale Frage, aber ich komm nicht auf die Lösung. Habe einige Editfelder mit den Namen EDIT1, EDIT2, EDIT3 usw. Würde gerne den Text der Felder hintereinander auslesen.
For i = 1 to Max do
Variable + IntToStr(i) := EDIT + IntToStr(i)
usw. funktioniert nicht.

Könnte mir Jemand auf die Sprünge helfen?
Danke.
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.336 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Editfelder in einer For-Schleife

  Alt 14. Jul 2015, 11:33
Entweder Du fügst die Edits erst mal Stück für Stück in eine TList ein und kannst diese dann jederzeit durchlaufen oder Du benutzt FindComponent.

Ach so, und für Variable + IntToStr(i) bietet sich die Nutzung eines Arrays oder auch einer Liste an.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)

Geändert von stahli (14. Jul 2015 um 11:35 Uhr)
  Mit Zitat antworten Zitat
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: Editfelder in einer For-Schleife

  Alt 14. Jul 2015, 11:48
würde das auch so funktionieren?
s1 : String;
var : integer
for i = 1 to max do
s1 := 'Edit'+ StrToInt(i);
Var := StrToInt(s1.text);
usw.
  Mit Zitat antworten Zitat
bcvs
Online

Registriert seit: 16. Jun 2011
668 Beiträge
 
Delphi 12 Athens
 
#4

AW: Editfelder in einer For-Schleife

  Alt 14. Jul 2015, 11:53
Probiers halt aus.
Damit kannst du deine Frage schon selbst beantworten.
  Mit Zitat antworten Zitat
Benutzerbild von TRomano
TRomano

Registriert seit: 24. Nov 2004
Ort: Düsseldorf
190 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Editfelder in einer For-Schleife

  Alt 14. Jul 2015, 11:55
Nein.
Was Stahli meinte war folgender Art:

Delphi-Quellcode:
var i : integer;
    sText : string;
    oEdit : TEdit;
begin
  sText := '';
  for i:=1 to {Anzahl Edit´s} do begin
    oEdit := FindComponent('Edit' + IntToStr(i)) as TEdit;
    if (oEdit <> nil) then sText := sText + oEdit.Text;
  end;
end;
Thomas Forget
  Mit Zitat antworten Zitat
Benutzerbild von TRomano
TRomano

Registriert seit: 24. Nov 2004
Ort: Düsseldorf
190 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Editfelder in einer For-Schleife

  Alt 14. Jul 2015, 11:59
Oder auch ...

Delphi-Quellcode:
type TArrayEdits : TArray<TEdit>;

var aEdits : TArrayEdits;
    oEdit : TEdit;
    sText : string;
begin
  // vielleicht auch im FormCreate-Event erzeugen
  aEdit := TArrayEdits.Create(EDIT1,EDIT2,EDIT3,EDIT4 {...});
  for oEdit in aEdits do sText := sText + oEdit.Text;
end;
Thomas Forget
  Mit Zitat antworten Zitat
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#7

AW: Editfelder in einer For-Schleife

  Alt 14. Jul 2015, 12:04
Danke TRomano,
habe jetzt verstanden.
Gruß, Luckner
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Editfelder in einer For-Schleife

  Alt 14. Jul 2015, 12:08
Bei einer Kompilersprache wie Delphi kann man im Gegensatz zu einer Interpretersprache keine Variablennamen zur Laufzeit zusammenbasteln.
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
Benutzerbild von frankyboy1974
frankyboy1974

Registriert seit: 7. Apr 2015
Ort: SH
169 Beiträge
 
Delphi XE7 Professional
 
#9

AW: Editfelder in einer For-Schleife

  Alt 14. Jul 2015, 12:15
Hallo,

ob eine Programmiersprache kompiliert oder interpretiert wird, ist keine Eigenschaft der Programmiersprache.

mfg

frank
Java ist auch eine Insel.
Ist Delphi von Oracle?
In meiner Buchstabensuppen fehlt das C++!
  Mit Zitat antworten Zitat
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#10

AW: Editfelder in einer For-Schleife

  Alt 16. Jul 2015, 10:29
Hallo TRomano,

angelehnt an Deinem Beispiel 1, jetzt mein Versuche. Leider gibts einen Fehler.

Delphi-Quellcode:
var oEdit: TEdit; i : Integer;

     for i := 1 to StrToInt(ComboHaftstanzenAnzahl.Text) do
       begin
         oEdit := FindComponent('EditStanzeKategorie' + IntToStr(i)) as TEdit;
         DataArtikelStanzen.IBDataSetArtikelStanzenKATEGORIE.AsString := oEdit.Text;
       end;
Der Compiler bring keinen Fehler, jedoch im Programm gibt es 'ungültige Typumwandlung'. Und zwar in der 1.-ten Zeile nach 'begin'. Diese Editfeld heißt 'EditStanzeKategorie1, EditStanzeKategorie2 usw.
Danke.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

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 10:12 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