Icon laden und ändern - !! HELP !!
-
Hallo,
bin jetzt weiter gekommen:
Dieser Code ändert das Icon:
HICON icon; icon = LoadIcon(NULL, "IDI_ICONCF"); icon = GetIcon(true); m_picture.SetIcon(icon);
Allerdings wird immer das MFC-Icon angezeigt, nicht das Icon in IDI_ICONCF.
Läuft da was mit LoadIcon falsch, oder wie
mfg
trequ
-
IDI_ICONCF ist eine ID kein string.
LoadIcon(NULL, MAKEINTRESOURCE(IDI_ICONCF));
-
Hallo,
hat keine Wirkung.
Dieser Code hat genau den gleichen Fehler, wie der andere Code oben.
HICON icon; icon = LoadIcon(NULL, MAKEINTRESOURCE(IDI_ICONCF)); icon = GetIcon(true); m_picture.SetIcon(icon);
Es wird immer nur das MFC-Standard Icon (IDR_MAINFRAME) gesetzt. ???
mfg
trequ
-
icon = GetIcon(true);
*hust*
-
Hallo,
dass du nicht krank wirst...
Aber irgendwie... verstehe ich es nicht:
1. GetIcon kann nur true oder false als Parameter haben. (32x32 px = true, 16x16px = false)
2. Ohne GetIcon ist m_picture leer. Das vorherige Bild ist weg, aber kein neues drin. (Wenn ich die Zeile weglasse)-->
mfg
trequ
-
HICON icon; // du lädst dein icon icon = LoadIcon(NULL, MAKEINTRESOURCE(IDI_ICONCF)); // ein handle auf dein icon steht jetzt in icon // du besorgst dir das aktuelle icon deines fensters icon = GetIcon(true); // ein handle auf das aktutlle icon deines fensters steht jetzt in icon // du setzt das icon, allerdings nicht deins m_picture.SetIcon(icon);
-
Hallo,
mir ist der Fehler jetzt klar.
Ich überschreibe das Icon, indem ich GetIcon() aufrufe.
Aber wenn ich GetIcon nicht aufrufe und die Zeile auskommentiere, wird zwar das alte Icon entfernt, aber kein neues Icon dargestellt.
Und genau das verstehe ich nicht...
mfg
trequ
-
Kann mir den gar niemand sagen, wie es geht?
Ich würde das Programm heute gerne fertig machen...
Ich habe diesen Code:
HICON icon; icon = LoadIcon(NULL, MAKEINTRESOURCE(IDI_ICONCF)); if(!icon){ MessageBox("Fehler beim laden des Icons"); } m_picture.SetIcon(icon);
Die MessageBox wird ausgegeben. Daher läuft offenbar was mit LoadIcon falsch.
IDI_ICONCF existiert auf jeden Fall unter Resourcen->Icon.
Ich verstehe nicht, warum es nicht geladen wird... ->[Das Icon, welches zuvor in m_picture war, ist weg, aber es wird kein neues angezeigt, sondern das Feld ist grau. Auch UpdateData (true) oder (false) bringt nix.] -> logisch, ich setzte ja auf NULL.
mfg
trequ
-
Ruf nach dem LoadIcon mal ein GetLastError auf und poste welchen Fehler-code zu zurückbekommst.
-
CMatt schrieb:
Ruf nach dem LoadIcon mal ein GetLastError auf und poste welchen Fehler-code zu zurückbekommst.
Hallo,
Error: 1813
Der angegebene Resourcentyp wurde nicht in der Image-Datei gefunden.Ich habe an stelle von IDI_ICONCF auch schon 131 probiert, das ist die Nummer aus der resource.h.
Geht auch nicht... ->mfg
trequ