AGB  ·  Datenschutz  ·  Impressum  







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

String in Befehl konvertieren

Ein Thema von robroy85 · begonnen am 11. Dez 2004 · letzter Beitrag vom 11. Dez 2004
Antwort Antwort
robroy85

Registriert seit: 6. Nov 2004
Ort: Norderstedt
42 Beiträge
 
#1

String in Befehl konvertieren

  Alt 11. Dez 2004, 12:31
Hallo Leute!!!

Ich möchte gerne den Text "HALLO!" auf Umwegen in Label2 anzeigen

Der einfachste Weg wäre natürlich
label2.caption:='HALLO!'; Aber da ich den Ort ,sprich "label2", aus einem array auslese, kann ich das nicht direkt in das Programm schreiben, sondern erhalte den Ort als String. Wie kann ich nun aus dem String einen teil aus der Befehlszeile machen ? Gibt es so etwas wie StrTo"Befehl" ??

Delphi-Quellcode:
begin

ort:='label2';
text:='HALLO!';
......
????????
end;
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

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

Re: String in Befehl konvertieren

  Alt 11. Dez 2004, 12:35
so einfach ist das ganze
Delphi-Quellcode:
var LComponent: TComponent;
begin
  LComponent := FindComponent('Label2');
  if (LComponent <> nil) and (LComponent is TLabel) then
    TLable(LComponent).Caption := 'deine Caption';
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: String in Befehl konvertieren

  Alt 11. Dez 2004, 12:35
Delphi ist kein Interpreter, sondern ein Compiler. Wenn du ein Array of TLabel hast, warum kannst du dan nicht machen:
LabelArray[5].Caption := 'Hallo';
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

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

Re: String in Befehl konvertieren

  Alt 11. Dez 2004, 12:38
Luckies Variante ist die bessere da FindComponent eben die Componente erst finden muss. Besser als ein Array fände ich allerdings da eine TList wenn man ohne TComponent arbeitet, das ist besser wenn man die anzahl der Labels später noch ändert.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
robroy85

Registriert seit: 6. Nov 2004
Ort: Norderstedt
42 Beiträge
 
#5

Re: String in Befehl konvertieren

  Alt 11. Dez 2004, 12:42
Leute, ich setz mich ran und werd von meinen Erfolg oder auch nicht berichten!
Wie ihr ja gesehen habt war das nur das kleine Testprog
  Mit Zitat antworten Zitat
robroy85

Registriert seit: 6. Nov 2004
Ort: Norderstedt
42 Beiträge
 
#6

Re: String in Befehl konvertieren

  Alt 11. Dez 2004, 17:22
Hallo Leute!
Ich hab eure Tipps alle mit meinem bessten "Können" eingebaut!
Die Namen der Edit-Felder werden in einer externen CSV-datei mit der folgenden Formatierung gespeichert:
Name1
Name2
Name3
....

Ich hab jetzt Edit-Felder statt Labels genommen...
Da Delphi bei
cfg_edit[i]:= cfg_dat.strings[i];
gemeckert hat, hab ich wie unten zu sehen ist noch ein Tedit() davor gesetzt...
Gehe ich richtig in der Annahme, dass der STring dann in einen Tedit-Wert geändert wird ??
Nun kommt mein Problemm... bei der letzten Zeile kommt es leider zum Programmabsturz, da "cfg_edit[7].text" wohl nicht dem vom mir erwarteten Wert entspricht ...
Was macht ich falsch ??

Delphi-Quellcode:
procedure TForm1.FormActivate(Sender:TObject);//beim Starten des Programms
var
cfg_dat : TStrings;
i: integer;
begin
//Auslesen der CFG-Datei
cfg_dat:=TStringList.Create; //StringList erzeugen
cfg_dat.LoadFromFile('CFG.csv');
 for i:=0 to 8 do begin
 cfg_edit[i]:= Tedit(cfg_dat.strings[i]);

 end;
cfg_dat.Free ;
cfg_edit[7].text:='kdhkjdh'; // ----> FEHLER !

end;
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#7

Re: String in Befehl konvertieren

  Alt 11. Dez 2004, 17:25
Du willst doch einen Edit-Text verändern, aber was du tust, ist das Edit direkt verändern
So sollte es funktionieren:
Delphi-Quellcode:
procedure TForm1.FormActivate(Sender:TObject);//beim Starten des Programms
var
cfg_dat : TStrings;
i: integer;
begin
//Auslesen der CFG-Datei
cfg_dat:=TStringList.Create; //StringList erzeugen
cfg_dat.LoadFromFile('CFG.csv');
for i:=0 to 8 do begin
cfg_edit[i].text:= cfg_dat.strings[i];

end;
cfg_dat.Free ;
cfg_edit[7].text:='kdhkjdh';

end;
  Mit Zitat antworten Zitat
robroy85

Registriert seit: 6. Nov 2004
Ort: Norderstedt
42 Beiträge
 
#8

Re: String in Befehl konvertieren

  Alt 11. Dez 2004, 17:49
Nein, eigentlich möchte ich nur meinem
leeren array ( cfg_edit: array [0..8] of TEdit; )aus der Datei cfg.csv jeweils einen namen zuweisen!

Bisher siecht mein Quelltext bei Schreiben in das 2Dimensionale Array BigTemp so aus:

Delphi-Quellcode:
BigTemp[b,0] := Nachname.Text;
BigTemp[b,1] := Vorname.Text;
BigTemp[b,2] := Deutsch.Text;
BigTemp[b,3] := Englisch.Text;
BigTemp[b,4] := Mathe.Text;
BigTemp[b,5] := Franz.Text;
BigTemp[b,6] := Latein.Text;
BigTemp[b,7] := Russisch.Text;
BigTemp[b,8] := Werken.Text;
......
diese ansich schon in der Test-phase langen 8Zeilen ( es kommen später noch mehr Fächer hinzu )
wollte ich durch folgenden Eintrag verkürzen:
Delphi-Quellcode:
begin
 for i:=0 to 8 do begin
 BigTemp[b,i] := cfg_edit[i].Text;
Nur ist leider in meinen vorhergeposteten Quelltext als Beispiel Nachname nicht gleich cfg_edit[0]



PS: MEIN ESSEN IS GRAD ANGEBRANNT ---Lecker
  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 14:26 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