Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi eigene Komponente mit Symbol versehen (https://www.delphipraxis.net/39270-eigene-komponente-mit-symbol-versehen.html)

VizeTE 31. Jan 2005 09:23


eigene Komponente mit Symbol versehen
 
Hallo zusammen,

ich beschäftige mich seit kurzen mit der Programmierung eigener Komponenten und dank verschiedener Tutorials geht das schon ganz gut.
Nun habe ich ein kleines Schönheitsproblem: Wie kann ich denn meine Komponente mit einem eigenen Symbol versehen? (Damit das in der Auswahlleiste nicht so langweilig aussieht)

Danke,
VizeTE

KrasserChecker 31. Jan 2005 09:28

Re: eigene Komponente mit Symbol versehen
 
Das Icon für die Komponentenpalette kannst Du so erstellen:
· im Bildeditor (über Tools|Bildeditor) eine neue Komponenten-Ressourcendatei erstellen,
· über das Kontextmenü eine Bitmap-Ressource im Format 24 x 24 mit 16 Farben hinzufügen,
· die Bitmap umbenennen, wobei Du den Namen der Komponente wählen mußt
· ein Bitmap zeichnen,
· die Ressourcendatei speichern.

Wichtig ist, dass Du den korrekten Namen vergibst:
· Die Bitmap muss den Namen der Komponente (z.B. TCLOCK) erhalten,
· die Datei muss
· im gleichen Verzeichnis wie die Komponenten-Unit und
· unter gleichem Namen wie die Unit gespeichert werden und die Endung .dcr erhalten (im Beispiel also UnitClock.dcr).

VizeTE 8. Feb 2005 09:01

Re: eigene Komponente mit Symbol versehen
 
Hallo,

ich habe da noch einen kleinen Zusatz:

Der beschriebene Weg von KrasserChecker ist soweit ok. Bei mir erschien das Icon aber erst als ich die Direktive {$R *.dcr} mit in den Quelltext der Komponente aufgenommen habe.
Dann hat das prima funktioniert, sogar mir 256 Farben (wobei ich nicht weiß ob das an der Direktive liegt).

Ciao,
VizeTE

shmia 8. Feb 2005 09:32

Re: eigene Komponente mit Symbol versehen
 
Zitat:

Zitat von VizeTE
Bei mir erschien das Icon aber erst als ich die Direktive {$R *.dcr} mit in den Quelltext der Komponente aufgenommen habe.

Die Ursache dafür ist:

Wenn eine Komponente in ein Package aufgenommen wird, nimmt Delphi automatisch eine vorhandene *.DCR Datei mit in das Package auf.
Wenn man nun das Icon mit der Direktive {$R *.dcr} mit in den Quelltext der Komponente einbindet,
gibt es beim Weitergeben der Komponente eine Warnung (WARNING. Duplicate resource(s))
Deshalb solltest du die die Direktive {$R *.dcr} wieder entfernen und die DCR-Datei von Hand in
das Package aufnehmen!

VizeTE 11. Feb 2005 15:18

Re: eigene Komponente mit Symbol versehen
 
Zitat:

Deshalb solltest du die die Direktive {$R *.dcr} wieder entfernen und die DCR-Datei von Hand in
das Package aufnehmen!
Sorry wenn ich mich hier ein wenig blöd anstelle aber nach der Anleitung von "KrasserChecker" bekomme ich es nicht hin. Allerdings habe ich kein Package gebildet sondern die Komponente per "Komponenten=>Komponenten installieren" eingefügt. Liegt es daran? Ansonsten wäre ich über eine Erklärung wie ich eine Komponente "von Hand einbinde" sehr dankbar.

Hansa 11. Feb 2005 20:27

Re: eigene Komponente mit Symbol versehen
 
{$R 'TEST.DCR'}

Wenn ich das so angebe, dann habe ich mein "Test"-Icon in der IDE. Guck mal in der *.dpk.

VizeTE 14. Feb 2005 10:07

Re: eigene Komponente mit Symbol versehen
 
@shmia

Ich habe die Weitergabe mal getestet und es kommt zu dem Fehler mit der Meldung: WARNING. Duplicate resource(s)

Von daher nochmal die Bitte mir zu erklären wie ich die Komponenten per Hand aufnehmen.

@hansa

Auch der genauen Benennung der Datei hat nicht geholfen. Die oben genannte Warnung erscheint weiterhin.

Ist es zwingend erforderlich den Weg über das Package zu gehen?

Danke - VizeTE

Hansa 14. Feb 2005 12:51

Re: eigene Komponente mit Symbol versehen
 
Dann gebe mal noch den genauen Pfad mit an. Glaube mir, es geht so !!

Blechwolf 23. Mär 2005 09:23

Re: eigene Komponente mit Symbol versehen
 
Zitat:

Zitat von shmia
Wenn eine Komponente in ein Package aufgenommen wird, nimmt Delphi automatisch eine vorhandene *.DCR Datei mit in das Package auf.[...]
Deshalb solltest du die die Direktive {$R *.dcr} wieder entfernen und die DCR-Datei von Hand in das Package aufnehmen!

Schön und gut, aber wie bekomme ich ne DCR-Datei nachträglich in mein Package rein?
Nachdem ich die PAS Datei entfernt habe, und neu hinzugefügt habe, war die DCR-Datei mit dabei.
Da das Icon aber (zumindest bei mir) als letztes erstellt wird, wäre es ganz nett zu wissen, wie ich die DCR-Datei dann nachträglich zum Package hinzufüge.

Grüße

Wolf

Stevie 23. Mär 2005 12:57

Re: eigene Komponente mit Symbol versehen
 
Zitat:

Zitat von Blechwolf
Da das Icon aber (zumindest bei mir) als letztes erstellt wird, wäre es ganz nett zu wissen, wie ich die DCR-Datei dann nachträglich zum Package hinzufüge.

Über Datei hinzufügen geht das nicht, entweder du entfernst deine Unit und nimmst sie wieder auf, oder...
Zitat:

Zitat von Hansa
{$R 'TEST.DCR'}

Wenn ich das so angebe, dann habe ich mein "Test"-Icon in der IDE. Guck mal in der *.dpk.



Alle Zeitangaben in WEZ +1. Es ist jetzt 22:52 Uhr.
Seite 1 von 2  1 2      

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