Einzelnen Beitrag anzeigen

Udo

Registriert seit: 19. Jan 2003
54 Beiträge
 
Delphi 8 Architect
 
#6

Re: Aktualisieren von Icons, wo ist der Fehler?

  Alt 24. Mai 2004, 17:10
Wenn ich das richtig verstehe dann brauchst du das doch gar nicht so
Icon ist (global) vorhanden, also wird nur das Bild getauscht.
Icon.LoadFromStream macht das Nötige: altes Bild freigeben, neues Bild erzeugen.
Release ist da schon kostenlos mit drinne.

Diesen Code habe ich mal durch den MemProof gejagt:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  sI: string;
  RS: TResourceStream;
  i: integer;
begin
  cl:= false;
  for i := 0 to 20000 do
  begin
    if sI = 'I1then sI:= 'I2else sI:= 'I1';
    RS := TResourceStream.Create(0, sI, RT_RCDATA);
    try
      RS.Position := 0;
      Application.Icon.LoadFromStream(RS);
      Image1.Picture.Icon.Handle := Application.Icon.Handle;
      Label1.Caption:= IntToStr(i);
      Application.ProcessMessages;
    finally
      RS.Free;
    end;
  end;
end;
Ergebnis: Keine Resourcenverschwendung zu erkennen.
Was bedeuted "IconData.hIcon := TNA_Icon.Handle;" bei dir?

Udo
  Mit Zitat antworten Zitat