Einzelnen Beitrag anzeigen

Puhbaehr
(Gast)

n/a Beiträge
 
#5

Re: Bilder für TImage aus einer Resource-Datei laden

  Alt 16. Aug 2006, 14:07
Mmmh in dem Buch "DirectX9 in Delphi" von Martin Pyka (Herausgeber: Stefan Zerbst) wird dieses Thema angesprochen. Dabei wird in dem Thema Texturen aus Ressourcendateien folgendes beschrieben:

"...kann man die Texturen auch in eine Ressourcendatei laden, so dass die Bilddaten beim Kompilieren in die Exe-Datei mit eingebunden werden."

Das ist ja genau das was du NICHT willst. Aber vielleicht hilft dir das trotzdem. Weiter im Buch (Kurzfassung):

- Texteditor wie Windows-Editor auf und folgendes als Beispiel eintragen:
Code:
tex1 RCDATA "textur1.jpg"
tex2 RCDATA "textur2.jpg"
tex3 RCDATA "textur3.jpg"
- Datei speichern als *.rc Datei z.B. "daten.rc"
- tex1, text2 sind einfach nur Namen die "anstatt der Dateinamen verwendet werden"
- "textur1.jpg" gibt, so steht es hier etwas undeutlich, den relativen Pfad zur Datei an
- die EXE namens brcc32.exe im Ordner /Bin des Delphi-Verzeichnisses gibt eine Ressourendatei aus. Aufruf z.B.:
Code:
brcc32.exe daten.rc
- im Projekt selbst wird die daraus erzeugte Ressourcendatei mit
Code:
{$R daten.res}
eingebunden

Hier im Buch wird diese Ressourcendatei verwendet um damit, wie schon geschrieben, Texturen einzubinden und diese auf die DirectX-Funktionen anzuwenden. Ich bin mir sicher dieser Satz könnte dir ebenfalls weiter helfen:
"...ein Handle zu der Anwendung, in der sich die Textur befindet. Delphi bietet hierfür bereits vordefinierte Variable hInstance." Also könnte man davon ausgehen, dass man irgendwo im eigenen Handle auf die Ressourcendatei zugreifen kann. Ich denke die Delphihilfe zu den Ressourcendateien bringt auch noch einiges Wertvolles.

Aber mal etwas anderes dazu:
Schreib dir doch ein kleines Programm dass die von dir verwendeten Grafiken für die neue Sprache samt Texten in einer eigenen Datei auslagert die anschließend dein Programm mit selber umgekehrter Prozedure wieder ausliest.
Das könnte evtl. in records gespeichert werden. Der Record wird wiederrum samt Rohdaten der Grafiken in eine Datei abgespeichert.
Beim Wiederauslesen wird gleicher Record-Typ wieder auf die Datei angewandt. Wenn du für jede Sprache gleiche Buttons usw. verwendest sollte das funktionieren.

Gruß, Robert
  Mit Zitat antworten Zitat