Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Edit1.text --> 1 durch Variable ersetzen? (https://www.delphipraxis.net/62491-edit1-text-1-durch-variable-ersetzen.html)

SteffenG 5. Feb 2006 14:38


Edit1.text --> 1 durch Variable ersetzen?
 
hallo,

Hier erstmal der Quelltext:

Delphi-Quellcode:
  for i := 1 to 6 do
  begin
  info := table1.FieldByName(datei).AsString;
  table1.next;
  Edit1.Text := info;
  end;
Ich möchte, dass das Programm etwas aus der Datenbank ausließt. Dann soll er zum nächsten Datensatz der DB gehen.
So, und jetzt mein Problem: Diese Information, die er gerade ausgelesen hat, soll nun in Edit1,Text geschrieben werden. Bislang kein Problem, aber wenn er jetzt die Schleife erneut ausführt, soll er die nächste Information nicht wieder in Edit1.Text packen, sondern in Edit2.text.
Um das tun zu können, müsste ich die 1 von Edit1.text durch eine Variable(Integer) ersetzen, die sich bei jeder Schleife um eine Zahl erhöht. Das könnte man ja ohne weiteres mit .inc machen. Aber Wie sagt man Delphi dann, dass er die 1 von Edit1.Text durch die Variable ersetzen soll?

mkinzler 5. Feb 2006 14:43

Re: Edit1.text --> 1 durch Variable ersetzen?
 
Kannst du nur durch die Methode FindComponent() der Formklasse bewerkstelligen.
z.B.
Delphi-Quellcode:
for i := 1 to 6 do
  begin
  info := table1.FieldByName(datei).AsString;
  table1.next;
  KompName := 'Edit'+IntToStr( i);
  (Form1.FindComponent( KompName) as TEdit).Text := Info;
  end;

SteffenG 5. Feb 2006 14:52

Re: Edit1.text --> 1 durch Variable ersetzen?
 
Zitat:

Zitat von mkinzler
Kannst du nur durch die Methode FindComponent() der Formklasse bewerkstelligen.
z.B.
Delphi-Quellcode:
for i := 1 to 6 do
  begin
  info := table1.FieldByName(datei).AsString;
  table1.next;
  KompName := 'Edit'+IntToStr( i);
  (Form1.FindComponent( KompName) as TEdit).Text := Info;
  end;

Ok, hat funktioniert, danke!

vlees91 5. Feb 2006 15:34

Re: Edit1.text --> 1 durch Variable ersetzen?
 
Zitat:

Zitat von mkinzler
Delphi-Quellcode:
  (Form1.FindComponent( KompName) as TEdit).Text := Info;

geht das nicht auch mit
Delphi-Quellcode:
FindComponent('Edit' + EditNR).Text := Info
ich habe nämlich in Erinnerung, dass ich das mal so gemacht habe

mkinzler 5. Feb 2006 15:38

Re: Edit1.text --> 1 durch Variable ersetzen?
 
Nein FindComponenet liefert ein Objekt vom Typ TComponent zurück. Diese Klasse besitzt aber die Eigenschaft Text nicht. deshalb muß nach TEdit gecastet werden.

vlees91 5. Feb 2006 15:43

Re: Edit1.text --> 1 durch Variable ersetzen?
 
stimmt
hab grad nachgeguckt
es war:
Delphi-Quellcode:
aktFeld := TEdit(FindComponent('SudokuFeld_' + SudoX + '_' + SudoY)).Text;


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:36 Uhr.

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