Thema: Delphi Bitmaps in DLL..

Einzelnen Beitrag anzeigen

Benutzerbild von movax
movax

Registriert seit: 12. Jul 2002
Ort: phobos
15 Beiträge
 
#4
  Alt 12. Jul 2002, 23:11
also, ich hab's jetzt so gemacht:

Code:
[b]procedure[/b] TForm1.FormCreate(Sender: TObject);
[b]var[/b]
  hLib: THandle;
[b]begin[/b]
  hLib := LoadLibrary(PChar('Tiles.dll'));
  [b]if[/b] hLib <> 0 [b]then[/b]
  [b]try[/b]
    ImageList1.ResInstLoad(hLib, rtBitmap, 'StrasseOben', clFuchsia);
  [b]finally[/b]
    FreeLibrary(hLib);
  [b]end[/b];
[b]end[/b];
"Tiles.dll" ist halt die DLL mit den Bitmaps drin und ImageList1 soll die ImageList-Komponente sein, in der die Bilder geladen werden.

die .rc-datei sieht so aus:
Code:
StrasseOben BITMAP "StrasseOben.bmp"
StrasseUnten BITMAP "StrasseUnten.bmp"
die .rc-datei liess sich auch so kompillieren.

Um das alles dann zu testen hab ich mir auf meine Form ein Image1 und einen Button gemacht, mit folgendem Code:
Code:
[b]procedure[/b] TForm1.Button1Click(Sender: TObject);
[b]var[/b] bild: tbitmap;
[b]begin[/b]
  bild := tbitmap.Create;
  Tiles.GetBitmap(0, bild);
  Image1.Canvas.Draw(0, 0, bild);
[b]end[/b];
wenn ich das programm dann starte und auf den button klicke passiert.. überhaupt nichts. Ja, okay, Image1 wird weiss, wegen dem Canvas-Zugriff.. aber das Bitmap wird nicht angezeigt!
Was hab ich falsch gemacht?

greetz,
-movax-
  Mit Zitat antworten Zitat