![]() |
Type Record
Hi DP'ler
Ich hab mal eine Frage bezüglich der deklaration von Records.... Ich möchte einen record Medium erstellen, das hab ich soweit.... type Medium = record ID : word; Name : String[50]; Typ : (CD,DVD); Kategorie : (Film,Musik,Software,SonstigeDaten) Nun soll aber Kategorie auch noch einzelne Unterpunkte für Film,Musik, Software und SonstigeDaten haben!! zB. Film -Format -FilmKategorie Musik -Format -MusikKategorie Wie mache ich das???? |
Re: Type Record
Schau doch einfach mal bei
![]() Übrigens gibt es hier delphitags. |
Re: Type Record
Wären da Klassen nicht viel besser geeignet?
Delphi-Quellcode:
Und dann ableiten
TMedium = class
FName: string FID: integer; end;
Delphi-Quellcode:
TDVD = class(TMedium)
//... end;
Delphi-Quellcode:
TCD = class(TMedium)
//... end; |
Re: Type Record
Ja, ist möglicherweise besser, vor allem, wenn man das gnaze irgendwann mal erweitern möchte. Aber man kann sich auch mal auf die reinen Pascalfunktionen zurückbesinnen... :wink:
|
Re: Type Record
Oder Du schaust Dir mal eine Datenbank an. Damit dürfte das auch ganz prima funktionieren.
|
Re: Type Record
Kann mir einer von euch sagen warum ich bei diesem record(von dem ich ein Array erstellt habe) auf alle Felder zugreifen kann??
Also wenn ich als Kategorie Film ausgewählt habe also Kategorie := Film; auf die Eigenschaft Schlüssel die ja eigentlich nur für die Software wichtig ist zugreifen kann!!
Code:
MediumRecord = record
ID : word; Name : String[50]; Typ : (CD,DVD); Kategorie : TKategorie; case TKategorie of Film :(FilmFormat,FilmKategorie : String[50];Länge : Word ;); Musik:(MusikFormat,MusikKategorie : String[50];); Software:(Hersteller,Schlüssel : String[50]); SonstigeDaten:(Zusatz : String[70]); Ist da was an der daklaration Falsch oder ist das normal so?? (arbeite das erste mal mit variante records)!!! 'THX' |
Re: Type Record
Das ist normal so. Die ganzen Felder definieren nur Adressoffsets, Filmkategorie und Musikkategorie sind z.B. identisch. Es liegt an deiner Verantwortung, nur die Felder zu benutzen, die du gerade benutzen willst.
|
Re: Type Record
Okay,,thx!
|
Re: Type Record
Gibt es irgendeine Möglichkeit von einem Array (of variante records) den zur Zeit aktiven Index des Arrays herausufinden???
Also das Problem ist das ich nicht weiß, wie ich das aktuell aktive Element bekomme??? Ich habe zwar eine Ausgabe in der das aktive Element steht, aber ich darf das aktuelle Element nicht aus einer Anzeigekomponenete lesen!! Z.B. Ich greife auf Arrayeintrag 4 von 8 zu! Dann ist das aktive Element 4!! *THX* |
Re: Type Record
Ich verstehe nicht ganz - was ist das "aktive Element"? Das, auf welches zuletzt zugegriffen wurde?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:10 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