AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Dynamische Bezeichner / variable Variablen
Thema durchsuchen
Ansicht
Themen-Optionen

Dynamische Bezeichner / variable Variablen

Ein Thema von jfheins · begonnen am 18. Jun 2004 · letzter Beitrag vom 18. Jun 2004
Antwort Antwort
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#1

Dynamische Bezeichner / variable Variablen

  Alt 18. Jun 2004, 14:56
Wie bekomme ich dynamische Bezeichner??

(lässt sich sauschlecht erklären, darum ein beispiel ...)

Delphi-Quellcode:
var
 gesnote: double;

for zaehler := 1 to strtoint (Anzahl_Box.Text) do Anweisung
begin
gesnote := gesnote + strtoint(Edit1.Text);
end;
So weit, so gut. Jetzt möchte ich aber nicht Edit1.Text haben, sondern Edit[zaeler].Text
Also beim ersten Durchlauf dann Edit1.Text, beim 2. Edit2.Text usw.
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Dynamische Bezeichner / variable Variablen

  Alt 18. Jun 2004, 14:58
Hi,

wenn es um Komponenten wie die Edits geht, solltest du dir mal Hier im Forum suchenFINDCOMPONENT anschauen.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von Steve
Steve

Registriert seit: 2. Mär 2004
Ort: Würzburg
730 Beiträge
 
Delphi 2006 Personal
 
#3

Re: Dynamische Bezeichner / variable Variablen

  Alt 18. Jun 2004, 14:59
Nimm doch einfach ein ARRAY OF TEdit.. Is in meinen Augen einfach als das FindComponent-Zeugs

Stephan
Stephan B.
Wer andern eine Grube gräbt ist Bauarbeiter!
Wer im Glashaus sitzt, sollte sich lieber im Dunkeln ausziehen!
Außerdem dieser Satz kein Verb...
  Mit Zitat antworten Zitat
Benutzerbild von Stanlay Hanks
Stanlay Hanks

Registriert seit: 1. Mär 2003
2.078 Beiträge
 
Delphi 2005 Professional
 
#4

Re: Dynamische Bezeichner / variable Variablen

  Alt 18. Jun 2004, 15:18
Wieso das denn? Find Komponent ist doch recht "angenehm"

gesnote := gesnote + StrToInt((FindComponent('Edit'+IntToStr(i)) as TEdit).Text); Müsste eigentlich gehen.

Man liest sich, Stanlay
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#5

Re: Dynamische Bezeichner / variable Variablen

  Alt 18. Jun 2004, 15:30
FindComponent() ist bei häufiger, gleicher Anwendung nicht nur unübersichtlicher und anfälliger sondern bei vielen Komponenten auf dem Form auch noch viel ineffizienter und langsammer.

Im private deines Forms definierst du ein array[] of TEdit, dieses wird per .FindKomponent() im .FormCreate() einmalig initialisert, und alle anderen Funktionen nutzen dann dieses Array[].
Das macht den Code sicherer (keine ständigen TypCast's ), schneller und übersichtlicher.
Grundsätzlich gilt: Variablen sind dazu da das man auch Variablen benutzt, sie vereinfachen den Source.

Gruß Hagen
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#6

Re: Dynamische Bezeichner / variable Variablen

  Alt 18. Jun 2004, 22:20
siehe auch Hier
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Dynamische Bezeichner / variable Variablen

  Alt 18. Jun 2004, 22:53
Sollte dann ungefähr so aussehen (bei 4 Edits)
Delphi-Quellcode:
[...]
  private
    fEdits: Array[1..4] of TEdit;
[...]
procedure TForm1.FormCreate(Sender: TObject);
var LCount: Integer;
begin
  for LCount := 1 to 4 do
  begin
    fEdits[LCount] := TEdit(FindComponent('Edit' + Inttostr(LCount)));
  end;
end;
[...]
var LCount: Integer;
begin
  for LCount := 1 to 4 do
  begin
    fEdits[LCount].Text := 'Testtext'; //allen Edits den selben Text zuweisen
  end;
end;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Antwort Antwort


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 19:15 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