![]() |
Array of Record - Einzelne Fixe Elemente?
Hey,
Ist es möglich dass ich einem Array von einem Record ein festen Wert zuweise ? Mein Record :
Delphi-Quellcode:
Und so greife ich drauf zu:
Values = record
ValueFrom : string; ValueFromType : string; ValueTo : string; ValueToType : string; ValueSectionA : string; ValueSectionB : string; ValueSectionC : string; ValueSectionD : string; end;
Delphi-Quellcode:
etc.... Aber ich habe pro Record eine feste Bezeichnung.
Value[0].ValueFrom := '0,5';
... Value[1].ValueFrom := '01'; ... Edit1.Text := Value[0].ValueFrom; Ich will zb "Value.Name" benutzen können ? Es ist ja ein Array of Record. Aber das Array of Record soll auch ein einzelnen Wert haben, der auserhalb der Liste/ dem Array liegt. Ist das möglich? Ich hoffe ihr konntet mir folgen.... LG, Real-TTX |
Re: Array of Record - Einzelne Fixe Elemente?
Zitat:
Hast Du vielleicht mal ein Beispiel wie Du dir das vorstellst? Grüße Klaus |
Re: Array of Record - Einzelne Fixe Elemente?
Verwende doch eine Aufzählung:
Delphi-Quellcode:
TWert = (wNetwerk, wWLAN, wHauptspeicher, wScreenX, wScreenY); // die Aufzählung
TValues = record // Datentypen sollen immer mit T.... beginnen ! ValueFrom : string; // vielleicht sollte man hier den Prefix "Value" weglassen; zuviel Schreibarbeit ValueFromType : string; ValueTo : string; ValueToType : string; ValueSectionA : string; ValueSectionB : string; ValueSectionC : string; ValueSectionD : string; end; TValueArray = array[wNetzwerk..wScreenX] of TValues; var MyValues : TValueArray; ... MyValues[wWLAN].ValueFrom := '1 MBit'; MyValues[wWLAN].ValueTo := '54 MBit'; |
Re: Array of Record - Einzelne Fixe Elemente?
Naja, ich weis nicht genau wie ich das lösen soll. Ich Programmier noch nicht so lange in Pascal/Delphi.
Ich habe eine Funktion. Diese liest mir Sämtliche Werte aus einer XML Datei aus. Vorgegebene Anzahl etc. Ein Fester Wert wäre: Der Name. Nun dachte ich dass ich den Typ "Array of TValues"(Ist eine Wertetabelle) nehme für diese Funktion.Nun will ich ein Record haben. Zb: Werte[0].From ... Werte[0].SectionD ... etc Desweiteren noch "Werte.Name" ... Ohne dass ich auf ein Array Element zugreifen muss... ? Ich weis echt nicht wie ich es anders erklären kann :/ Gruß |
Re: Array of Record - Einzelne Fixe Elemente?
Ich glaub, ich habs verstanden. Guck dir mal den Quellcode in Delphi für TStrings/TStringlist an.
Du brauchst ein Objekt, das eine Property als DEFAULT hat. So kannst du deine Abfragen mit [0],[1],... und gleichzeitig auch mit .name; .xxx machen rollstuhlfahrer |
Re: Array of Record - Einzelne Fixe Elemente?
ein Name pro Array-Element?
also warum dann nicht in dem Record?
Code:
Values = record
[b]Name : string;[/b] ValueFrom : string; ValueFromType : string; ValueTo : string; ValueToType : string; ValueSectionA : string; ValueSectionB : string; ValueSectionC : string; ValueSectionD : string; end;
Delphi-Quellcode:
Werte[0].Name
|
Re: Array of Record - Einzelne Fixe Elemente?
Moin sx2008,
kleiner Vorschlag zur Vereinfachung. Statt
Delphi-Quellcode:
kann man es auch so
TWert = (wNetwerk, wWLAN, wHauptspeicher, wScreenX, wScreenY); // die Aufzählung
TValueArray = array[wNetzwerk..wScreenX] of TValues;
Delphi-Quellcode:
schreiben.
TWert = (wNetwerk, wWLAN, wHauptspeicher, wScreenX, wScreenY); // die Aufzählung
TValueArray = array[TWert] of TValues; Vorteil: Ändere ich was an TWert, brauche ich bei der Array-Deklaration nichts zu ändern. |
Re: Array of Record - Einzelne Fixe Elemente?
und was ist mit meinem Objekt wie TStrings??
Zitat:
Zitat:
Gruß |
Re: Array of Record - Einzelne Fixe Elemente?
Wie würde dass denn mit TStrings gehen, wenn man fragen darf ? Ich habe mir das mal angeschaut, aber verstehe ich das noch nicht so ganz :/ :wall:
Gruß |
Re: Array of Record - Einzelne Fixe Elemente?
Ein Name Pro Array und nicht Record aus dem einfach Grund dass es sich um auslesen einer Wertetabelle handelt. Diese Tabelle hat IMMER 4 (mit Header 5) Zeilen. Die Werte lese ich aus. Und diese Tabelle hat ein Name und nicht die einzelnen Spalten. Zb Name der Tabelle "DIN ISO 2768 T1"... Genau das ist mein Problem, ich will diesen Name nicht jedem Record zuweisen... Ich denke "rollstuhlfahrer" hat dies verstanden :P
Gruß, Real-TTX |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:08 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