![]() |
Icons in EXE einbinden
Hallo
Ich versuche schon seit ein paar tagen Icons in mein projekt einzufügen so das man sie nicht in den exe ordner sein müssen wie klappt das? vielen dank |
Re: Icons in EXE einbinden
Mit einem Handelsüblichem Ressourceneditor, oder dem bei Delphi beiligendem Bildeditor die *Projektname*.res Datei bearbeiten und dort einfügen.
Danach mit LoadIcon oder LoadImage im Programm laden. Edit: Oder eine neue xxx.res machen und per {$R xxx.res} einbinden. |
Re: Icons in EXE einbinden
Zitat:
Zitat:
|
Re: Icons in EXE einbinden
Zitat:
Vorher das Projekt schließen... |
Re: Icons in EXE einbinden
Hmmm
Ok also ich muss ne datei inem ordner erstellen die zb. icons.res lautet und die dan einbinden mit {$R xxx.res} soweit so gut aber wie kommen den da die icons in die datei? oder muss ich einfach das icon.ico in icon.res umwandeln und dan jedes einzelne einbinden? wäre soweit kein problem ist nur ne frage |
Re: Icons in EXE einbinden
Besorg dir den XN Resource Editor. Damit kannst du schnell und problemlos deine Icons in eine .RES-Datei einbinden (eine reciht für alle Icons). Mit den üblichen Verdächtigen (LoadIcon, LoadImage) kannst du sie dann in deinem Programm verwenden.
|
Re: Icons in EXE einbinden
ok werd ich machen danke
und die res datei muss dan nicht in dem ordner sei wo ich das programm dan am schluss verwenden möchte oder? die icons sind dan in der exe? |
Re: Icons in EXE einbinden
Du darfst nicht vergessen folgendes in deinem Quellcode einzufügen:
Delphi-Quellcode:
Der Compiler nimmt dann die Datei und bindet sie ins Programm ein (Nachteil: Bei großen Icons, Bildern, usw. wird auch die fertige EXE entsprechend größer).
{$R PFAD\ZUR\RES-DATEI.RES}
|
Re: Icons in EXE einbinden
Wichtig ist dann, bei LoadIcon bzw. LoadImage den richtigen Namen, den Du in der .res Datei für das jeweilige Icon verwendet hast zu verwenden.
|
Re: Icons in EXE einbinden
ok bis jetzt hab ich alles
nun wie ruffe ich das icon auf bzw. lade ich dieses ? Muss ich als namen einfach den Ordner in der Res datei kennen ? hier zb 2 - 9? |
Re: Icons in EXE einbinden
Beispiel:
Delphi-Quellcode:
Edit: Ohne Pfad und .res
Application.Icon.Handle:=LoadIcon(HINSTANCE, 'MeinIconName');
|
Re: Icons in EXE einbinden
Hab was gefunden bzw. gemacht
Delphi-Quellcode:
obwohl die datei icons.RES im ordner ist gibt er die meldung icons.RES nicht gefunden
image1.Picture.Icon.LoadFromResourceName(2,'icons.RES');
weshalb den das? ich weiss hätte den beitrag editieren sollen habs heraus gefunden war einen ordner zu tief :D also er hat die datei gefunden aber wie kann ich nun das entsprechende icon aus der res datei auswählen? |
Re: Icons in EXE einbinden
Du musst die RES-Datei schon mit {$R RESDATEI} einbinden.
Und als Resource-Name musst du den Namen nehmen, den du dem Icon in der RES-Datei gegeben hast. |
Re: Icons in EXE einbinden
Liste der Anhänge anzeigen (Anzahl: 1)
ich weiss nicht wo der namen steht
seht selbst |
Re: Icons in EXE einbinden
Der Name steht direkt über "Language Neutral". Wenn du auf "Language Neutral" mit der rechten Maustaste klickst, dann kannst du mit dem Punkt "Properties" auch den Namen ändern...
|
Re: Icons in EXE einbinden
Ok hab dem mal den namen HELLO gegeben
und dan das so gemacht
Delphi-Quellcode:
aber es klappt nicht ha den code in eine Button getan
image1.Picture.Icon.LoadFromResourceName(0,'HELLO');
wofür steht eigentlich das 0 bzw. die Zahl vor dem Komma und was ist Cardinal? vielen dank |
Re: Icons in EXE einbinden
Die Zahl vor dem Namen ist die Instanz des Moduls, das das Icon enthält. Cardinal ist ein Integertyp, 32bit vorzeichenlos.
Ruf folgendes auf:
Delphi-Quellcode:
Dann sollte es gehen.
image1.Picture.Icon.LoadFromResourceName(HInstance, 'HELLO');
|
Re: Icons in EXE einbinden
Steht alles in der Hilfe:
Zitat:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var BitMap1 : TBitMap; begin BitMap1 := TBitMap.Create; try BitMap1.LoadFromResourceName(HInstance,'THEBITMAP'); Canvas.Draw(12,12,BitMap1); finally BitMap1.Free; end; end; |
Re: Icons in EXE einbinden
So:
Delphi-Quellcode:
Edit: Rote Kästen wären manches mal nicht schlecht: :zwinker:
image1.Picture.Icon.LoadFromResourceName(HInstance,'HELLO');
|
Re: Icons in EXE einbinden
es hat geklappt vielen vielen dank an euch alle
:D :D :D :D :D :D :D :D :D :D :D :D |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:53 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-2025 by Thomas Breitkreuz