Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Ext. Variablen dynamisch erzeugen (https://www.delphipraxis.net/50224-ext-variablen-dynamisch-erzeugen.html)

TPeterT 22. Jul 2005 08:42


Ext. Variablen dynamisch erzeugen
 
Hallo!
Gibt es eine Möglichkeit im "CreateForm" Externe Variablen dynaisch zu erzeugen. D.h. ich möchte für jeden Tabelleneintrag in der Datenbank eine Variable erzeugen. In einer anderen Form will ich auf diese dann mit Form.DynaischerVariablenname zugreifen...
Hoffe ich habe das einigermassen verständlich erklärt...
Zusammengefasst: Kann man externe Variablen generell dynamisch erzeugen...
Danke und liebe Grüsse
Peter

Robert_G 22. Jul 2005 09:00

Re: Ext. Variablen dynamisch erzeugen
 
Wie und Warum willst du dynamisch Variablen erzeugen (was schonmal nicht geht ;) ), wenn du im anderen Form doch fix darauf zugreifst? :gruebel: *nix kapiert*
Nimm dir doch einfach Delphi-Referenz durchsuchenarrays oder irgendeine der Delphi-Referenz durchsuchenTListableitungen...

TPeterT 22. Jul 2005 09:05

Re: Ext. Variablen dynamisch erzeugen
 
Hi! Danke für die Antwort (welche ich fast schon erwartet hätte ;-)))

also das Problem ist folgendes:
Habe eine Tabelle mit mehreren Schlüsselwörter die sich natürlich (nur durch mich) erweitern lassen.
Nun möchte ich bei Aufruf einer Form aus einer anderen Form genau die Schlüsselwörter per Form.Schlüsselwort := 'Text' übergeben...

mal schaun.. ich denke ich brauch einen komlett anderen Ansatz für dieses Problem...
vielleicht per MemData etc...

liebe Grüsse
Peter

barf00s 22. Jul 2005 09:08

Re: Ext. Variablen dynamisch erzeugen
 
dann ist TStringlist dein Freund

xSL.Add('schlüsselwort=wert');

wert := xSL.Values['schlüsselwort']; // wenn man davon ausgeht das wert nen string iss

TPeterT 22. Jul 2005 09:10

Re: Ext. Variablen dynamisch erzeugen
 
Hi!
hmm... das ist aber eine perfekte superidee... werd ich sogleich mal versuchen!
Danke und liebe Grüsse
Peter

shmia 22. Jul 2005 09:20

Re: Ext. Variablen dynamisch erzeugen
 
Zitat:

Zitat von TPeterT
Nun möchte ich bei Aufruf einer Form aus einer anderen Form genau die Schlüsselwörter per Form.Schlüsselwort := 'Text' übergeben...

Das wäre als Array-Property möglich:
Delphi-Quellcode:
  TForm1 = class(TForm)
  private
    function GetDynData(const name: string): Variant;
    procedure SetDynData(const name: string; const Value: Variant);
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
    property DynData[const name:string]:Variant read GetDynData write SetDynData;
  end;
Jetzt stellt sich noch die Frage, wie man die Daten speichert.
Man braucht dazu ein assoziatives Array:
http://de.wikipedia.org/wiki/Assoziatives_Array
Dieses Array lässt sich z.B. mit einer TStringList + eine array of Variant nachbilden.

barf00s 22. Jul 2005 09:23

Re: Ext. Variablen dynamisch erzeugen
 
dann sollte man sich vllt ne Hashlist bauen .....
dann kann man auch auf diese langsamen _typenunsicheren_ variants _verzichten_


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:52 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz