Icon für Dialog sieht *** aus
-
Ich möchte mit SetIcon ein Icon für meinen Dialog setzen,also habe ich mit meinen Grafikprogramm ein 16x16 Bild mit 16 Farben gemalt das durch Copy&Paste im Editor in ein 16x16 Icon eingefügt und die Palete des Bildes auch geladen,in der Vorschau sieht es auch noch normal aus,aber im Programm sieht es nur noch **** weil es Anscheined mit weniger als 16 Farben oder mit einer anderen Palete gezeichnet wird.
-
Da ist irgendwo bei InitDialog so ein Aufruf:
SetIcon(m_hIcon,TRUE); // oder SetIcon(m_hIcon,FALSE);
Ich weiss nicht mehr ganau was dort steht, aber versuch einfach zw. true und false zu wechseln.
-
Ich habe da beides stehen.
Aber mit Kommentar, deswegen zeige ich es mal.// Symbol für dieses Dialogfeld festlegen. Wird automatisch erledigt // wenn das Hauptfenster der Anwendung kein Dialogfeld ist SetIcon(m_hIconLinks, TRUE); // Großes Symbol verwenden SetIcon(m_hIconLinks, FALSE); // Kleines Symbol verwenden
-
Das Icon hat aber nur das kleine Symbol
-
Sicher? Hast du schon mal umgeschaltet und das große angeguckt?
-
Da ich als der Fehler auftrat das grosse rausgelöscht habe,weil ich dachte das er das vieleicht resized,bin ich ziemlich sicher.Da ist nur das 16x16 Icon.
-
Hab rausgefunden woran es lag ich habe erst das Bild rüberkopiert und dann die Palete geändert.
-
Lag doch nicht daran.Wenn ich das Icon schliesse sind nur noch die 3 Farben die in der Windowspalette sind im Bild aber die Farben auf der Farben Palette sind immer noch wie sie sein sollten.Kann man nur Icons mit den Windowspalettefarben verwenden?
Edit:Habe den Grund dafür rausgefunden.Mein blödes Grafikprogramm speichert die Palleten nur in pl3 und nicht pal und wenn man eine pal-Datei angibt wird die anscheined ignoriert
-
Ich vermute ja, da ich die Tage ein ähnliches Problem mit einem Bitmap hatte.
Ich habe dann einfach die entsprechenden Farben ersetzt.
-
Wenn ich die Palette aus dem Studio speichere sind es die Standardfarben aber auf der Farbauswahl erscheinen die richtigen Farben,nachdem ich sie per Hand eingestellt habe.