AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Schleife für Label-Zuweisung

Ein Thema von the_source · begonnen am 28. Jun 2006 · letzter Beitrag vom 29. Jun 2006
Antwort Antwort
the_source

Registriert seit: 16. Jun 2006
12 Beiträge
 
#1

Schleife für Label-Zuweisung

  Alt 28. Jun 2006, 17:06
hallo,

ich hab ein Array, aus dem die Werte der Reihe nach ausgelesen werden und dann auf dazugehörige Labels geschrieben werden.
Delphi-Quellcode:
OutA.Caption:= IntToStr(countArray[65]);
OutB.Caption:= IntToStr(countArray[66]);
OutC.Caption:= IntToStr(countArray[67]);
usw...

Wie kann ich daraus eine Schleife machen, sodass ich nicht alle einzeln angeben muss?

Danke im Voraus

MfG
the_source
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#2

Re: Schleife für Label-Zuweisung

  Alt 28. Jun 2006, 17:10
Such mal nach Findcomponent und chr/ord. Damit kannst du alles in einen Ausdruck schreiben.
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Go2EITS

Registriert seit: 25. Jun 2006
519 Beiträge
 
Delphi 7 Personal
 
#3

Re: Schleife für Label-Zuweisung

  Alt 28. Jun 2006, 17:11
Willst Du es so?

Procedure MeinVorschlag;
VAR I:integer;
Begin
for I=65 to 67 do Form1.OutC.Caption:= IntToStr(countArray[i]);
END;


GotoEits
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#4

Re: Schleife für Label-Zuweisung

  Alt 28. Jun 2006, 17:22
Was würde das denn bringen? Die Schleife ist nutzlos. Im Endeffekt hast du nur im C-Label den passenden Wert stehen und die anderen beiden überhaupt nicht angesprochen.
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Go2EITS

Registriert seit: 25. Jun 2006
519 Beiträge
 
Delphi 7 Personal
 
#5

Re: Schleife für Label-Zuweisung

  Alt 28. Jun 2006, 17:26
@Toxman
Habe ich auch gerade gesehen...
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Schleife für Label-Zuweisung

  Alt 28. Jun 2006, 17:29
Findcomponent würd ich da nicht hernehmen! ich würd die in einen array stecken:



Delphi-Quellcode:
var Labels: array[0..xxx] of TLabel;

procedure Labelset;
begin
  Labels[0] := LabelA;
  Labels[1] := LabelB;
  ...
  ...
end;

procedure Labelwrite;
var i: Integer;
begin
  for i := 0 to high(Labels) do
    Labels[i].Caption := cpations[i];
end;
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.323 Beiträge
 
Delphi XE2 Professional
 
#7

Re: Schleife für Label-Zuweisung

  Alt 28. Jun 2006, 17:39
Zitat von DGL-luke:
Findcomponent würd ich da nicht hernehmen! ich würd die in einen array stecken:



Delphi-Quellcode:
var Labels: array[0..xxx] of TLabel;

procedure Labelset;
begin
  Labels[0] := LabelA;
  Labels[1] := LabelB;
  ...
  ...
end;

procedure Labelwrite;
var i: Integer;
begin
  for i := 0 to high(Labels) do
    Labels[i].Caption := cpations[i];
end;
Und wie kommst du dann wieder zurück auf LabelA, etc?

Aber, wie wäre es, die Labels einfach zur Laufzeit zu erzeugen?
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Schleife für Label-Zuweisung

  Alt 28. Jun 2006, 19:26
Wieso zurückkommen? LabelA ist nichts anderes als ein 32bit-Speicherbereich, in dem die Adresse einer TLabel-Instanz steht. Du kannst gerne auch so machen:

Delphi-Quellcode:
var labels: array['A'..'Z'] of TLabel;

labels['A'].Caption := blablabla....
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Quick_silver

Registriert seit: 2. Jan 2003
78 Beiträge
 
Delphi 6 Enterprise
 
#9

Re: Schleife für Label-Zuweisung

  Alt 28. Jun 2006, 21:19
Ich hatte mal ein ähnliches Problem. Ich habe die Labels dann zur Laufzeit generiert. Das ganzeim Array. Im Prinzip ist es wie die Zuweisung in ein Array, nur das man auch die Initialisierung in einer Schleife ausführen kann. Genauen Code habe ich leider nicht zur Hand.
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Schleife für Label-Zuweisung

  Alt 29. Jun 2006, 08:33
Hai,

wenn eh ein Array da ist kann ich dort doch auch gleich die Werte und die Labels ablegen.
Delphi-Quellcode:
type
  TCounterRecord = record
    Counter: Integer;
    CounterLabel: TLabel;
  end;

var
  CounterArray: array[1..10] of TCounterRecord;

procedure TDemoForm.btn_testClick(Sender: TObject);
var
  ndx: Integer;
begin
  for ndx := Low(CounterArray) to High(CounterArray) do
  begin
    with CounterArray[ndx] do
    begin
      CounterLabel.Caption := IntToStr(CounterArray[ndx].Counter);
    end;
  end;
end;

procedure TDemoForm.FormCreate(Sender: TObject);
var
  ndx: Integer;
begin
  CounterArray[1].CounterLabel := Label1;
  CounterArray[2].CounterLabel := Label2;
  CounterArray[3].CounterLabel := Label3;
  CounterArray[4].CounterLabel := Label4;
  CounterArray[5].CounterLabel := Label5;
  CounterArray[6].CounterLabel := Label6;
  CounterArray[7].CounterLabel := Label7;
  CounterArray[8].CounterLabel := Label8;
  CounterArray[9].CounterLabel := Label9;
  CounterArray[10].CounterLabel := Label10;

  for ndx := 1 to 10 do
    CounterArray[ndx].Counter := ndx;
end;
Stephan B.
  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 11:04 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