![]() |
Objeckte mit einem Integer assoziieren
Hallo,
ich hab ein klienes Problem. Und zwar bin ich grad dabei, ein Programm zu schreiben, in welchem ich eine Statistik benötige. Ich wollte aber nicht die doofe TChart-Ding nehmen. Im Prinzip funkt. ja soweit auch alles. Nur eins nicht:
Delphi-Quellcode:
S1,S2, usw. sind Säulen des Diagramms (12 = ein Jahr). Ich wollte diese nun einzeln aus einer Datei lesen, und dabei immer den Integer um 1 erhöhen. Also die Datei ist ne INI-Datei. [1] ist der Januar [2] der Febraur usw.
const
ShapeS: array[1..12] of TObject = (S1,S2,S3,S4,S5,S6,S7,S8,S9,S10,S11,S12); Jetzt mein Problem: Bei dem Code hier oben, meldet er immer 'Konstantenausdruck erwartet'. Weiß jemand, wie man ein Object mit einem Integer assoziiert? |
Re: Objeckte mit einem Integer assoziieren
Hi,
ja gibt es. Ich habe ![]()
Delphi-Quellcode:
Das einzige Problem ist, dass du das mit einem Array nicht so machen kannst. Allerdings musst du mal gucken, ob du dein Programm umschreiben kannst, denn so geht es auf jedenfall.
uses {...}, TypInfo, {...};
type TSaeule = (S1,S2,S3,S4,S5,S6,S7,S8,S9,S10,S11,S12); procedure TForm1.Button1Click(Sender: TObject); var aRes: TSaeule; begin aRes := TSaeule(GetEnumValue(TypeInfo(TSaeule), 'S'+IntToStr( {-->} DeinIntegerWert {<---} ))); end; Chris |
Re: Objeckte mit einem Integer assoziieren
Zitat:
Delphi-Quellcode:
so bleibt ein integer ein integer, ob enum oder nicht spielt da keine rollse :wink:
aRes := TSaele(DeinIntegerWert-1); // -1 für eins-basierten index!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:22 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