AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Variable über zusammengesetzte Strings ansprechen
Thema durchsuchen
Ansicht
Themen-Optionen

Variable über zusammengesetzte Strings ansprechen

Ein Thema von hirnstroem · begonnen am 22. Mai 2007 · letzter Beitrag vom 22. Mai 2007
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Corelgott
Corelgott

Registriert seit: 11. Apr 2003
Ort: Lübeck
213 Beiträge
 
Delphi 2006 Enterprise
 
#11

Re: Variable über zusammengesetzte Strings ansprechen

  Alt 22. Mai 2007, 15:24
hi,

ist vll ein doofer ansatz, aber zumindest habe ich das problem bei mir so gelöst:

mach ein objekt, welches keine vars enthält und schreibe für die constanten ne kleine wrapper funktion
dann packst du um alles properties...

also
property foobar : String read FFoobar write FFoobar bzw. machst das gerade über ne getter setter funk (zuverlässiger)

Delphi-Quellcode:
procedure setFoobar(const Value : String);
function getFoobar() : String;
finden kannst du die dann per String! und das auch per laufzeit!

Delphi-Quellcode:
function eval(methName : String; obj : TObject) : TMethod;
begin
  result.Data := obj;
  result.Code := obj.MethodAddress(methName);
end;
must der funk den namen der procedure angeben und das Obj dem diese gehört...

der einzige harken / knackpunkt:
Die funktionen nutzt delphi normalerweise um den objektinspektor zu befüllen. Es geht nur wenn die properties / methoden published (public reicht nicht!) sind

vll hilft das ja...

cya

Corelgott
wer Rächtschraibfehler findet daaf sie behalten...
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#12

Re: Variable über zusammengesetzte Strings ansprechen

  Alt 22. Mai 2007, 15:43
Zitat von Apollonius:
Damit gewinnt man nichts, da man die Namen nicht wie gewünscht zusammensetzen kann.
Ach, erzähl doch kein Quark, wenn ich die Funktion so aufrufe:

myconst := FindConst('Ha' + 'ns'); kann ich die Namen ja auch zusammensetzen...
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#13

Re: Variable über zusammengesetzte Strings ansprechen

  Alt 22. Mai 2007, 15:50
Das geht? Ehrlich? Wieder mal was gelernt, ich wusste gar ncht, dass man sowas mit Aufzählungstypen machen kann.
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#14

Re: Variable über zusammengesetzte Strings ansprechen

  Alt 22. Mai 2007, 15:52
Zitat von Apollonius:
Das geht? Ehrlich? Wieder mal was gelernt, ich wusste gar ncht, dass man sowas mit Aufzählungstypen machen kann.
Du hast Dir einfach nur die Funktion nicht richtig angesehen oder Du hast nicht ganz verstanden, was die Funktion macht
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#15

Re: Variable über zusammengesetzte Strings ansprechen

  Alt 22. Mai 2007, 16:02
Wer Augen hat zum sehen, der sehe!
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  Mit Zitat antworten Zitat
volkerw

Registriert seit: 28. Nov 2005
Ort: Witten
26 Beiträge
 
Delphi 2006 Professional
 
#16

Re: Variable über zusammengesetzte Strings ansprechen

  Alt 22. Mai 2007, 16:40
Hallo,

ideal wäre hier wohl ein Hash, wie z.B. von Perl bekannt (ein Array, dessen Index ein String ist).
Google sollte einiges dazu liefern, z.B. das hier: www.opengl24.de

Gruß Volker
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#17

Re: Variable über zusammengesetzte Strings ansprechen

  Alt 22. Mai 2007, 17:08
Eine Stringlist kann als assoziatives Stringarray verwendet werden, wie schon 3mal beschrieben.
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  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
 
#18

Re: Variable über zusammengesetzte Strings ansprechen

  Alt 22. Mai 2007, 17:17
Zitat von Codewalker:
Wäre aber eine nette Funktion die man sich in Delphi durchaus wünschen würde, Variablen und Konstanten per String-Namen anzusprechen. Kann man das nicht irgendwo vorschlagen? Oder vielleicht liest das ja jemand mit nem guten Draht zu CodeGear
Nein. Das widerspricht der Typisierung. Und man kann sich genügend Datenstrukturen bauen (Bäume, Dictionaries, Hashmaps, um einige zu nennen), mit denen man einen Zugriff per String-Index realisieren kann.
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
Antwort Antwort
Seite 2 von 2     12   


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 13:45 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