Einzelnen Beitrag anzeigen

Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.685 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: Application.Icon setzen

  Alt 7. Apr 2018, 09:25
Delphi-Quellcode:
{$R MYICONS.RES}

procedure TForm1.Button1Click(Sender: TObject);
var
  h : hIcon; // wir brauchen das Handle, nicht das Image, deswegen HICON
begin
  h := LoadIcon(hInstance, 'ICON_1'); // in Resource-Datei MyIcons.res ist ein Eintrag Namens ICON_1, Handle dahin erzeugen
  Application.Icon.Handle := h; // Handle an das Programm übergeben
  InvalidateRect(Application.Handle, nil, true); // Programm update
end;
Also in MyIcons.res existiert ein Icon was den Namen "ICON_1" bekommen hat, dem System ist in der Regel die Größe egal da es von selbst runter/hoch skaliert. Ich hab keinen Check drinn da die Resource bei mir immer existiert. Ob es LowLevel ist kann ich nicht sagen, nur das es bei mir auf diese Weise klappt kann ich sagen.

Code:
SendMessage(hApp, WM_SETICON, ICON_BIG, h);
sollte das WinApi Äquivalent sein und genügen.
Ich vermute LoadImage() macht nicht das gleiche wie LoadIcon().

Code:
SendMessage(hApp, WM_SETICON, ICON_BIG, LoadIcon(hInstance, 'MAINICON'));
Probier's mal so.
Gruß vom KodeZwerg

Geändert von KodeZwerg ( 7. Apr 2018 um 09:37 Uhr)
  Mit Zitat antworten Zitat