![]() |
AW: Breakpoint / Compiler Probleme
+Warum eigentlich "Shortstring", das wird doch unnötig groß da immer die maximale Größe an Speicher reserviert wird. Da Name und Dateiname immer als Paar auftreten und z.T. mehrfach verwendet werden, würde ich die Struktur auch anders aufbauen:
Delphi-Quellcode:
P.S. warum versaut der Delphi-Tag meine schöne Formatierung :(
interface
function ChartsName(n1, n2: Integer): string; function ChartsPath(n1, n2: Integer): string; implementation type TChartRec = record Name: string; Path: string; end const Chart_INFO1 : TChartRec = (Name = 'INFO 1' , Path = 'INFO1.jpg'); Chart_INFO2 : TChartRec = (Name = 'INFO 1' , Path = 'INFO1.jpg'); Chart_GND : TChartRec = (Name = 'GND' , Path = 'GND.jpg'); Chart_PARKEast : TChartRec = (Name = 'PARK East' , Path = 'PARKEast.jpg'); Chart_PARK : TChartRec = (Name = 'PARK' , Path = 'PARK.jpg'); Chart_PARKWest : TChartRec = (Name = 'PARK West' , Path = 'PARKWest.jpg'); Chart_SIDAMEXO : TChartRec = (Name = 'SID AMEXO' , Path = 'SIDAMEXO.jpg'); Chart_SID : TChartRec = (Name = 'SID' , Path = 'SID.jpg'); {...usw....} FCharts: array [0..40, 0..4] of TChartRec = ((Chart_INFO1, Chart_INFO1, Chart_GND, Chart_GND, Chart_GND), (Chart_INFO2, Chart_INFO2, Chart_PARKEast, Chart_PARK, Chart_PARK), (Chart_GND, Chart_GND, Chart_PARKWest, Chart_SIDAMEXO, Chart_SID), {...usw....} ); function ChartsName(n1, n2: Integer): string; begin Result := FCharts[n1, n2].Name; end; function ChartsPath(n1, n2: Integer): string; begin case n2 of 0: Result := 'EDDG'; 1: Result := 'EDDH'; 2: Result := 'EDDK'; 3: Result := 'EDDM'; 4: Result := 'EDDT'; else Result := ''; Exit; end; Result := Format('Charts/%s/%s', [Result, FCharts[n1, n2].Path]); end; |
AW: Breakpoint / Compiler Probleme
Hey
Ja is mir aufgefallen ;-) Aber später sollen es eh andere einträge werden und leider hilft das nicht gegen das Problem. @ Blub, da hast du eig recht, werd ich mal probieren! Danke |
AW: Breakpoint / Compiler Probleme
Ich würde die Daten in eine Datei packen und diese bei Programmstart in das Array laden.
Wenn ich mir die Daten des Arrays so anschaue, macht es den Eindruck das sich diese Daten auch mal ändern können. Schon deswegen würde ich das Auslagern in eine Datei bevorzugen damit nicht wegen jeder kleinen Datenänderung das Programm kompiliert werden muss. |
AW: Breakpoint / Compiler Probleme
Ja da haste Recht! Wollt ich auch machen, hatte blos noch keine Zeit
|
AW: Breakpoint / Compiler Probleme
Keine Zeit?
Eine TStringList im Key/Value-Modus wäre wesentlich schneller implementiert als solche Arrays. die Datei
Code:
INFO 1=Charts/EDDG/INFO1.jpg
INFO 2=Charts/EDDG/INFO2.jpg GND=Charts/EDDG/GND.jpg ...
Delphi-Quellcode:
SL.LoadFromFile(...);
S := SL.Value['GND']; // S = 'Charts/EDDG/GND.jpg' S := SL.Key[1]; // S = 'INFO 2' |
AW: Breakpoint / Compiler Probleme
Versteh zwar net warum das schneller sein soll aber macht auch nix.
Lad die namen jetzt aus ner externen Datei. Funktioniert wunderbar und compilen geht auch! Danke! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:21 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 by Thomas Breitkreuz