Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Komponenten Bitmap in D2010 hinterlegen (https://www.delphipraxis.net/149247-komponenten-bitmap-d2010-hinterlegen.html)

Sybok Factor 17. Mär 2010 13:38


Komponenten Bitmap in D2010 hinterlegen
 
Ich habe in Delphi 2010 eine Komponente von TComponent abgeleitet. Wie ändere ich nun die Komponentenbitmap?

- Die Online Hilfe ist zum Thema Komponentenentwicklung ausführlicher als erwartet, leider keinen Hinweis zu meiner Frage gefunden.
- Ich habe Projekt \Resourcen... gefunden, finde aber keine vernünftige Anleitung zu Benutzung.
- Welche Eigenschaften muss die Komponentenbitmap erfüllen?

Kurz und knapp: Gibt es irgendwo ein Tutorial zur Komponentenentwicklung nach Delphi 7?

Viele Grüße
Sybok Factor

Stevie 17. Mär 2010 15:38

Re: Komponenten Bitmap in D2010 hinterlegen
 
Erstelle dir mit einem Texteditor deiner Wahl ein Resource Script (Dateiendung .rc) mit folgendem Inhalt:

Code:
TMyComponent   Bitmap   "mycomp.bmp"
Das erste ist der Resourcename - dieser muss genauso lauten wie deine Komponentenklasse. Die Resource muss vom Typ Bitmap sein (nicht verwechseln mit BMP) und du musst die Datei angeben, welche dein Icon enthält. Sie sollte 24x24 Pixel groß sein und 8Bit Farbtiefe (256 Farben) haben. 16 Farben gehen auch, mit mehr hab ichs noch nicht versucht.
Dieses Script jagst du durch den Resource compiler (brcc32.exe) und erhälst eine gleichlautende Resourcedatei. Du kannst die Endung auf .dcr Ändern, ist aber nicht nötig.
Nun fügst du in deinem Designtime Package folgende Zeile in der dpk ein:

Delphi-Quellcode:
{$R Name_deiner_res_bzw_dcr_datei}
Package kompilieren, installieren und schon hat deine Komponente ein Icon.

Sybok Factor 18. Mär 2010 00:55

Re: Komponenten Bitmap in D2010 hinterlegen
 
Hallo Stevie,

erstmal vielen Dank für deine Antwort.

Interessanterweise wird vom Delphi 2010 Resourcenmanager (s.o.) eine RC-Datei mit dem von dir angegebenen Inhalt erzeugt. Mit dem Resourcen Compiler habe ich die RES-Datei erzeugt. In meinem Test mit einem 16X16 Icon von Borland habe ich hinterher eine Komponente mit diesem Icon installiert bekommen (Win Vista). Allerdings war es schon ein bißchen hakelig.
Auf meinem Produktiv Rechner (Win XP) liegen das Package und die Units nicht im selben Verzeichnis (wie beim Test). Dort bekomme ich es nicht hin, entweder werden doppelt Resourcen angemeckert oder es ändert sich einfach nichts. Ich werde morgen noch mal ein bißchen probieren. Vielleicht ist es jetzt einfach schon zu spät...

Nachdem Emba nun nicht mehr diesen uralten Resourcenmanager von Borland mitliefert, hatte ich angenommen, dass er nicht mehr benötigt wird und durch eine einfachere Lösung ersetzt worden ist. Aber unter Delphi 7 habe ich das Einbinden immer hinbekommen. Daher nur um sicher zu gehen: Du selber hast mit dem von dir beschriebenen Vorgehen keine Probleme unter Delphi 2010 eigene Kompenenten Bitmaps einzubinden?

Viele Grüße
Sybok

Stevie 18. Mär 2010 10:11

Re: Komponenten Bitmap in D2010 hinterlegen
 
Ich habe während des Schreibens meines Posts extra das Vorgehen selber in Delphi 2010 durchgeführt, damit ich auch sicher war, dass ich keinen Unfug erzähle oder was vergesse. :angel2:

Sybok Factor 18. Mär 2010 19:27

Re: Komponenten Bitmap in D2010 hinterlegen
 
Danke Stevie,

ich habe noch ein bißchen probiert, aber es klappt so, wie von dir beschrieben. Am Einfachsten ist es, wenn die Unit und die Projektdateien in einem Verzeichnis sind, dann muss man sich keine Gedanken machen.
Frage beantwortet.

Sybok


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:10 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