Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Vorlage von DGL-luke (https://www.delphipraxis.net/86254-vorlage-von-dgl-luke.html)

JannyR 11. Feb 2007 17:06


Vorlage von DGL-luke
 
Sharky ich find das eigtl "Zumüllung" des Forums. Da die Fragen sich ja auf die vorherigen beziehen.
Aber OK.

Hab noch nen paar fragen zur der Vorlage von DGL-luke (hier):

1. Wie kann ich die Einträge im Menü ändern? (0,1,2)

2. Ist es möglich den res Ordner später irgendwie in einer Datei zu verpacken, damit nicht jeder einfach die Dateien im Ordner anguckt?


Werd erst nächsten Freitag wieder antworten können, weil ich jetzt wieder zurück in die Kaserne muss und da haben wir noch kein Internet.

Matze 11. Feb 2007 17:10

Re: Vorlage von DGL-luke
 
So wissen wohl die wenigsten, worum es geht. Könntest du den Thread verlinken, auf den du dich beziehst?

Edit: Ach es geht darum. Gibt nächstes Mal bitte den Link an, denn in einigen Wochen weiß ohne Link keiner mehr was mit diesem Thema anzufangen.

DGL-luke 11. Feb 2007 17:51

Re: Vorlage von DGL-luke
 
Hallo JannyR,

natürlcih geht das ;-)

Allerdings brauchst du dazu dann eine etwas kompliziertere Datenstruktur:

Delphi-Quellcode:
type
  TImageType = (itFileName, itBMP, itJPG); // ein sogenanntes "Enum" oder "Aufzählung".

  TEntry = record //record = zusammenfassung mehrerer "Felder"
    Caption: string; //Ein stringpointer für den listboxeintrag
    Text:string; //und noch einer für den Beschriebungstext
    TextIsFileName: Boolean; //und ein Zuckerl: Wenns auf false steht, wird "Text" direkt ins Richedit übernommen, wenn nicht, wirds aus der Datei, deren Name in "Text" steht, geladen
    Image:string; //und der dateiname des bilds... natürlich auch ein stringpointer
    ImageType: TImageType;
  end;

  TEntryCollection = record
    Title: string; //Menücaption
    Entries: array of TEntry; //Die Einträge - Array = mehrere Variablen hintereinander
  end;
Damit hast du zwei neue Datentypen deklariert. Für die solltest du dir jetzt ein Dateiformat überlegen, oder eine Datenbankstruktur.

Aber das kostet dann extra ;-)

EDIT: Such dir erstmal die Schlagwörter "Record", "Aufzählungstypen" etc. in der Delphi-Hilfe nach. Und dann kannst du ja mal n Datenspeichertut ansehen:
http://dsdt.info/tutorials/?cat=11

JannyR 16. Feb 2007 15:23

Re: Vorlage von DGL-luke
 
Liste der Anhänge anzeigen (Anzahl: 1)
So da bin ich wieder :wink:

Also wenn ich in diesen Code:

Delphi-Quellcode:
var
  Form2: TForm2;

  entries: array[0..2] of array[0..2] of array[0..2] of string =
  ((
    ('Bild1', '1.rtf', '1.jpg'),
    ('Bild2', '2.rtf', '1_reduced_faceonly_3cols.jpg'),
    ('Bild3', '1.rtf', '1_cropped.jpg')
  ),
  (
    ('Bild4','1.rtf','1_reduced_faceonly_3cols_2_small.jpg'),
    ('Bild5','1.rtf','1_reduced_faceonly_3cols_172.bmp'),
    ('Bild6','1.rtf','1_reduced.jpg')
  ),
  (
    ('Bild1', '1.rtf', '1.jpg'),
    ('Bild2', '1.rtf', '1_reduced_faceonly_3cols.jpg'),
    ('Bild3', '1.rtf', '1_cropped.jpg')
  ));
mehrere Einträge mache kommt immer ne Fehlermeldung und zwar: siehe Anhang



Und dass mit dem ablegen der daten in einer Datei werd ich mir mal durchlesen

DGL-luke 16. Feb 2007 15:40

Re: Vorlage von DGL-luke
 
Hallo,

das kommt daher dass es ne Konstante ist. Die Range-Werte (die Zahlen beim array[x..y]) müssen mit der anzahl der Einträge übereinstimmen.

Du solltest das ganze z.B. in eine XML-Datei auslagern. Lies dir mal alle Tutorials auf www.dsdt.info/tutorials durch, dann kannst du das selber ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:12 Uhr.

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