Autor Beitrag
Killi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 299

Win*
D6 Prof
BeitragVerfasst: Fr 03.01.03 13:39 
Hi!

Also - ich hab zum Beispiel nen String time:= '730' - jetzt will ich ÜBER diesen STRING auf ein Edit-Feld zugreifen, wie mache ich das? Hab gedacht mit sowas ähnlichem wie 'E' + time + '_1'.Text:= 'blabla' (Also heißt mein Edit-Feld "E730_1") - aber das geht nat. nicht! Wie mache ich das am besten???
Luncustaf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 324

Win 2k
D7 Ent.
BeitragVerfasst: Fr 03.01.03 13:44 
ausblenden Quelltext
1:
2:
3:
4:
with Edit1 do
begin
   name := 'E'+ time +'_1';
end;


so sollte es eigentlich funktionieren -> dann haste dem editfeld den namen E730_1 zugewiesen.

wenn du mehrere hast und jeweils auf den wert aus time zurückgreifen willst um dann auf die eigenschaft text zuzugreifen musste erst den namen vergeben und dann das verwenden um darauf zugreifen zu können

ausblenden Quelltext
1:
TEdit('E'+ time +'_1').Text := 'xxxx'					


korrigiert mich wenn ich falsch liege


gr€€tz
Killi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 299

Win*
D6 Prof
BeitragVerfasst: Fr 03.01.03 13:59 
Danke für die schnelle Hilfe!
OK, die Objekte gibt es schon, ich muss ihnen nicht extra den Namen geben! Jetzt wollte ich grade bei nem Label die Farbe ändern:
ausblenden Quelltext
1:
2:
3:
4:
  
DecodeTime(Now, Hour, Min, Sec, MSec);
Labeltest.Caption:= IntToStr(Hour) + ' - ' + IntToStr(Min);
TLabel('L'+ IntToStr(Hour) + IntToStr(Min) +'_1').Color:= clYellow;

Aber er hat mir n Fehler bei der EAccessViolation gegeben - Zugriffsverletzung! Wieso? Das Label heißt L130_1 - genau das hat mir das DecodeTime auch gegeben 13 und 0!?!?
maxk
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1696
Erhaltene Danke: 1

Win XP, Debian Lenny
Delphi 6 Personal
BeitragVerfasst: Fr 03.01.03 14:28 
ausblenden Quelltext
1:
(FindComponent('E' + time + '_1') as TEdit).Text:='Test';					

Sollte gehen!

maxk

_________________
Ein Computer wird das tun, was Du programmierst - nicht das, was Du willst.
Killi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 299

Win*
D6 Prof
BeitragVerfasst: Fr 03.01.03 14:34 
Danke! Hat geklappt!!!!
Ist total wichtig für meinen neuen Terminkalender, damit ich die jetzige Zeit hervorheben kann!
DANKE!!!
maxk
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1696
Erhaltene Danke: 1

Win XP, Debian Lenny
Delphi 6 Personal
BeitragVerfasst: Fr 03.01.03 14:52 
Pass auf!

Du solltest lieber vorher mit:
ausblenden Quelltext
1:
if not (FindComponent('E' + time + '_1') is TEdit) then exit;					

ob es sich wirklich um ein Edit handelt! Sonst kriegst du ne Exception

maxk

_________________
Ein Computer wird das tun, was Du programmierst - nicht das, was Du willst.
Killi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 299

Win*
D6 Prof
BeitragVerfasst: Fr 03.01.03 17:44 
Basst scho! Hab 10.000 Labels bzw. Edits in 15 Minuten-schritten so benannt, also weiß ich auch dass es Labels bzw. Edits sind, und diejenigen, die es nicht gibt, habe ich eh mit ner Schleife ausgeschlossen!
Killi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 299

Win*
D6 Prof
BeitragVerfasst: Fr 10.01.03 16:07 
Hi!

Nochmal Frage: Wie kann ich das ganze RÜCKWÄRTS machen? Also wenn ich auf n Label, das EPatient700_1 heißt klicke - will ich das 700 rausholen - wie mach ich das? Gibts da auch n Befehl???
tommie-lie
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 4373

Ubuntu 7.10 "Gutsy Gibbon"

BeitragVerfasst: Fr 10.01.03 17:48 
nimmst den Name als String, suchst dir die Position von 700 und kopierst's raus. Oder schneidest das EPatient und _1 raus, dann hast du auch die 700.

_________________
Your computer is designed to become slower and more unreliable over time, so you have to upgrade. But if you'd like some false hope, I can tell you how to defragment your disk. - Dilbert