Delphi-PRAXiS
Seite 2 von 4     12 34      

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/)
-   -   Komponenten Icon (https://www.delphipraxis.net/207326-komponenten-icon.html)

TurboMagic 14. Mär 2021 11:39

AW: Komponenten Icon
 
Danke für den Tipp mit es muss Bitmap sein.
Nur: warum nutzt Uwe's Beispiel dann PNGs mit RCData?
Ist das für FMX?

himitsu 14. Mär 2021 11:45

AW: Komponenten Icon
 
Kann sein.
FMX nutzt an vielen Stellen PNG (auch in der TImageList).
Aber Bitmap muß dort auch gehn, für CrossPlatform-Komponenten (VCL und FMX).

Aber mehrere Bilder/Formate wäre schon toll,
denn auf der Form ist es im VCL 24x24, aber in der neuen ToolPalette 16x16.

Der VCL-FormDesigner bräuchte doch nur TPicture verwenden, anstatt TBitmap, und schon könnte man alle Typen verwenden. (ICO, BMP, GIF, PNG, ...)

TurboMagic 14. Mär 2021 12:51

AW: Komponenten Icon
 
Hallo,

habe die jetzt durch BMPs ersetzt, deinstalliuert, bpls gelöscht, reinstalliert und IDE neu gestartet.
Ergebinis: in der Tool Palette funktioniert es jetzt, auf der Form ist immer noch das Default Icon... :-(

@Himitsu: dein letzter Post ist zur Bildgröße etwas verwirrend: einmal schreibst du was von 24x24 und das
andere mal von 28x28...

Grüße
TurboMagic

himitsu 14. Mär 2021 13:07

AW: Komponenten Icon
 
Ja, das Icon auf Form/Datenmodul ist 24x24, in der Komponente mit 28x28 drumrum, mit 1 Pixel Rahmen und 1 Pixel Margin. :angle:
In der neuen ToolPalette ist es 16x16 und in der Alten 20x20.

Da passt einfach nichts, damit das eine Bitmap überall "gut" aussieht,

vor allem da für das StretchDraw der unschönste Modus gekommen wird.
Wobei, vielleicht könnte man das sogar ausnutzen. Das Bitmap sooooo groß, dass man die 3 Bilder überlagen könnte und jedes Format abwechseln seine eigenen Pixel daraus zieht (außer beim 0:0).
Müsste man mal schauen was man mit TScaledGraphicDrawer, WinAPI.StretchBlt, WinAPI.TransparentStretchBlt und WinAPI.AlphaBlend alles machen kann.

Uwe Raabe 14. Mär 2021 13:47

AW: Komponenten Icon
 
Zitat:

Zitat von TurboMagic (Beitrag 1485071)
2. PNGs zum Design Time Package als RCDATA hinzugefügt und benannt wie bei dir: Klassenname + Auflösung

Klassenname + Auflösung + '_PNG'

Beispiel: TPngImageList128_PNG

Ohne das PNG müsste es ein BMP sein.

TurboMagic 14. Mär 2021 14:00

AW: Komponenten Icon
 
Seufz!
Habe die BMPs jetzt wie beschrieben durch PNGs ausgetauscht.
Ja, in der Palette funktioniert das, auf der Form immer noch das Standard Icon.
Woran hängt das bitte?

Und ja, vorher deinstalliert und BPLs gelöscht und erst nach IDE Neustart das
Design Time Package wieder installiert.

Das darf doch nicht so kompliziert sein...

himitsu 14. Mär 2021 14:08

AW: Komponenten Icon
 
Ohhh, _ICO geht nicht
aber _PNG geht wirklich, sogar ohne die Auflösung.
Delphi-Quellcode:
TPngImageList_PNG


Für was/wo ist denn das Bild mit 128?

[EDIT]
16, 24, 32 und/oder 128 Pixel (das Letzte geht nur als PNG)
https://blogs.embarcadero.com/new-in...mponent-icons/

16 für neue Palette
20 für alte Palette (das fehlt)
24 für FormDesigner
32 für keine Ahnung
64 verwenden Delphi irgendwo und berechnet es sich aus dem 128
128 für keine Ahnung

TurboMagic 14. Mär 2021 14:32

AW: Komponenten Icon
 
Naja, wofür das 128er Icon ist beschreibt der Blog Post ja auch.
Nur. Warum es bei mir nicht klappt wenn die nicht visuelle Komponete auf eine
Form platziert wird beschreibt das alles nicht.

himitsu 14. Mär 2021 14:44

AW: Komponenten Icon
 
Dein Delphi ist kaputt
oder du machst was falsch?

Es ist auch im richtigen Package?
Unit der Komponente und das Bild müssen im selben Package liegen. (muß man z.B. aufpassen, wenn man mit getrennten Runtime- und DesignTimePackages arbeitet)
Ist auch bissl sinnlos, eil so gibt man es immer in seinen EXEn mit, obwohl es zur Runtime niemals gebraucht wird. (außer man baut sich dort einen Formdesigner ein, aber egal, denn den von Emba kann man eh nicht nutzen und kann das mit dem Bild dort anders machen)
Und du hast geprüft, dass auch das richtige Package geladen wird? (nicht daß ein altes Packge irgendwo liegt)

Das mit dem falschen Package hatte ich auch grade erst. https://www.delphipraxis.net/206825-...-entladen.html
In Hilfe > Info > Versionsinfo sieht man nicht alle geladenen Module. Und in Komponente > Packages installieren findest zumindestens die explizit eingebundenen Packages (aber ohne implizit geladene RuntimePackages).

Die Groß-/Kleinschreibung scheint egal zu sein.

TurboMagic 14. Mär 2021 15:07

AW: Komponenten Icon
 
Die Images hab ich in das Design Time Package gesteckt.
Da gehören die ja denke ich auch rein.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:08 Uhr.
Seite 2 von 4     12 34      

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