![]() |
Re: Probleme mit Property einer Komponente
Liste der Anhänge anzeigen (Anzahl: 1)
Indem du dir eine Ableitung von TIcon schreibst, die das kann...
Für die Methode LoadFromFile hab ich das mal gemacht. |
Re: Probleme mit Property einer Komponente
Hallo,
Jetzt muss ich nochmal dieses Thema aufgreifen, da ich wieder mit TIcons rumspiele. Ich hab mir mal das Icon-Laden vom TForm angeschaut und musste feststellen, dass beim LoadFromFile vom TIcon das neue Icon sofort angezeigt wird und nicht wie durch das Umladen eines Extra-Icons (siehe paar Thread weiter oben). In der Forms.pas ist folgendes drin (ich hoffe dass darf man hier veröffentlichen):
Code:
Ich habe jetzt gleiche jetzt mal in meiner Komponente drin, nur das IconChanged hab ich wie folgt geändert:
protected
property Icon: TIcon read FIcon write SetIcon stored IsIconStored; procedure TCustomForm.OnCreate.... begin FIcon.OnChange := IconChanged; end; procedure TCustomForm.SetIcon(Value: TIcon); begin FIcon.Assign(Value); end; procedure TCustomForm.IconChanged(Sender: TObject); begin if NewStyleControls then begin if HandleAllocated and (BorderStyle <> bsDialog) then SendMessage(Handle, WM_SETICON, 1, GetIconHandle); end else if IsIconic(Handle) then Invalidate; end;
Code:
Nur leider wird das Icon nicht geändert.
SendMessage(IconData.hIcon, WM_SETICON, 1, FIcon.Handle);
Was macht TForm was ich nicht mach? :?: mfg Helmi |
Re: Probleme mit Property einer Komponente
Nun ja...
Delphi-Quellcode:
ist halt was anderes, als
SendMessage(Handle, WM_SETICON, 1, GetIconHandle);
Delphi-Quellcode:
Oben wird an das Fenster eine Nachricht geschickt (Handle ist dasselbe wie Self.Handle) und bei dir an das Icon-Handle!
SendMessage(IconData.hIcon, WM_SETICON, 1, FIcon.Handle);
Wenn, dann müsstest du an dein Componente die Nachricht schicken, allerdings müsste die dafür ein Hanlde besitzen, was imho erst in TWinControl implementiert ist. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:00 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-2025 by Thomas Breitkreuz