![]() |
Probleme mit der Änderung des TNA-Icons
Hallo,
ich habe ein Problem, wenn mein Programm das TNA-Icon ändern soll: Es erscheint die Meldung "[X] Zugriffsverletzung bei Adresse..." Der Code (gekürzt auf die wesentlichen Teile):
Delphi-Quellcode:
(Es handelt sich um einen Client, auf dem eine Server-Komponente läuft, also nicht von den Namen verwirren lassen :wink: )var IASymbol : TIcon; // Global, da das in mehreren Prozeduren benötigt wird procedure TaskBarAktualisieren; var tnid: TNotifyIconData; begin with tnid do begin cbSize := SizeOf(TNotifyIconData); Wnd := PWRT_ClientForm.Handle; uID := 1; uFlags := NIF_MESSAGE or NIF_ICON or NIF_TIP; uCallbackMessage := WM_TASKBAREVENT; if (ServerAktiv) then hIcon := Application.Icon.Handle // Hier wird geprüft, ob das Standard-Icon (kein Problem)... else hIcon := IASymbol.Handle; // ...oder das 2. Icon verwendet werden soll (Fehlermeldung) end; StrCopy(tnid.szTip, PChar(ClientCaption)); // ClientCaption => Die QuickInfo Shell_NotifyIcon(NIM_MODIFY, @tnid); end; procedure TPWRT_ClientForm.FormCreate(Sender: TObject); begin IconListe.GetIcon(0, IASymbol); // Das Icon stammt aus einer ImageList end; Danke, Manu |
Re: Probleme mit der Änderung des TNA-Icons
Vor dem GetIcon() fehlt ein
Delphi-Quellcode:
In TPWRT_ClientForm.FormDestroy musst du dann natürlich auch
IASymbol := TIcon.Create;
Delphi-Quellcode:
einbauen.
FreeAndNil(IASymbol);
|
Re: Probleme mit der Änderung des TNA-Icons
:thumb: Danke!
Das hab ich vergessen... :oops: Bin es nicht gewohnt, erst Create aufzurufen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:48 Uhr. |
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 by Thomas Breitkreuz