Entwickler-Ecke
Dateizugriff - Bitmap in Datei ablegen?
Thunder00 - Di 14.01.03 18:14
Titel: Bitmap in Datei ablegen?
Hallo,
Ich habe über ein sehr gutes Tutorial von
http://www.delphi-source.de gelernt, wie ich Funktionen in eine DLL packe.
Aber wie packe ich Bitmaps (Bilder) in eine DLL und lese sie später wieder raus in ein TImage.
Ich hab ein Spiel geschrieben, wo ich viele Bitmaps brauche. Und jetz will ich verschiedene Skins über DLLs verwalten.
Gruß,
Andreas 8)
matze - Di 14.01.03 19:25
dann schau mal in den tuts von denen oder hier im forum (suche FAQs ect.) wie man mit ressourcen datein umgeht !!!
Thunder00 - Mi 15.01.03 17:24
Da steht aber nirgends was darüber. Ich hab schon geschaut.
derDoc - So 19.01.03 12:52
Also du must beim Schreiben deiner DLL die Bilder aus einer .res Datei einbinden:
Quelltext
1:
| {$R Name der Datei.RES} |
Um eine .res Datei zu bekommen benötigst du eine .rc Datei, das ist eigentlich eine Textdatei, die wie folgt aufgebaut ist:
NamefürsProgramm Bitmap NamederBitmap.bmp
Mit der Datei
brc32.exe im \bin Verzeichnis von Delphi kannst du diese .rc in eine .res verwandeln.
Jetzt musst du die DLL noch Compilieren und schon kannst du dein Bild über NamefürsProgramm ansprechen und laden, etc.
Pierre - So 19.01.03 12:58
Hallo,
ich habe noch kein Bild in eine DLL geladen, jedoch schon in eine Ressourcen - Datei. Da ich jedoch schon DLLs geschrieben habe,
würde ich folgenden Weg versuchen:
Du schreibst alle Bildernamen mit Notepad in eine Textdatei, diese hat folgendes Format:
Quelltext
1: 2:
| 100 RCDATA "1.jpg" 101 RCDATA "2.jpg" |
Speichere sie als Bilder.rc ab. Dann compilierst Du sie mit der "brc32.exe" (original in Delphi vorhanden)zu "bilder.res"
Diese bilder.res speicherst Du in den DLL- Projektorder und bindest
mit
diese Ressource (dort wo Du auch anderes *.res einbindest) in Deine DLL.
Beim Compilieren müßten jetzt die Bilder in die DLL eingebunden werden.
Schreib mal, ob es so geht!
Gruß Pierre
derDoc - So 19.01.03 14:31
@Pierre:
Ist das nicht das was ich schon vorgeschlagen hatte?
Ich glaube aber Thunder00 wollte Bitmaps laden und keine .jpg Bildchen. Dann musst du statt RCDATA :arrow: Bitmap reinschreiben.
Thunder00 - So 19.01.03 15:14
Danke. Ich werds ausprobieren und Meldung machen.
:D
Pierre - So 19.01.03 18:41
@derDoc,
ich habe die Frage gelesen und wollte drauf antworten, Deine Antwort gab es noch nicht. Beim Schreiben habe ich mir einen Kaffe geholt. Schau mal, Du warst 6 Minuter früher als ich. D.h., Meine Antwort und mein Kaffee hat länger als 6 Minuten gedauert. Da warst Du schon mit Deiner Antwort fertig und hast sie eingestellt.
Gruß Pierre
derDoc - So 19.01.03 19:20
@Pierre:
Ich hoffe der Kaffe hat geschmeckt und das sollte kein Vorwurf sein, nur eine Feststellung
Gruß
derDoc
Thunder00 - Di 21.01.03 21:00
Funktioniert alles ganz toll mit dem compilieren, nur wie lade ich in ein TImage die Bitmap aus der RES-Datei ??
Ich hab sie über {$R Bild.res} eingebunden.
Dann hab ich über Image1.Picture := Bilder probiert die Bitmap anzuzeigen.
Leider ohne Erfolg.
Die RC-Datei sind folgendermaßen aus Bilder Bitmap logo.bmp und heißt Bild.rc
Also alles richtig. Nur wie krieg ich die Bitmap halt in das TImage??
Vielen Dank im Voraus,
smiegel - Di 21.01.03 23:22
Hallo,
Quelltext
1:
| Image1.Picture.Bitmap.Handle:=LoadBitmap(hInstance, 'Bilder'); |
Anmerkung: hInstance ist schon von Delphi vorbelegt.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!