Jak załadować ikonkę dla programu z pliku *.ico przy jego uruchomieniu, by sie wyświetlała w pasku zadań

0

jak w temacie ... chodzi mi o wczytanie ikonki i "podmianę" standardowej projektu wyświetlanej na pasku zadań ...

0

We własnym programie czy w innym, do którego nie masz źródeł?

0

We własnym ...

0

Nie pamiętam co zawierała klasa TApplication w tak starym Delphi. W Lazarusie można to zrobić tak:

Application.Icon.LoadFromFile('application.ico');

To w zupełności wystarczy. Sprawdź czy u siebie masz taką właściwość.

0

już mam ...

procedure TForm1.FormCreate(Sender: TObject);
var
  Ikonka: TIcon;
begin
  Ikonka := TIcon.Create;
  Ikonka.LoadFromFile('mojaIkona.ico');
  Application.Icon := Ikonka;
  Ikonka.Free;
end;

plik z ikonka musi byc w folderze z exekiem ...
plik mojaIkona.ico moze byc podmieniany z zachowaniem jedynie nazwy ...

0

No ale po co tyle tego kodu? Application.Icon już istnieje w pamięci, więc wystarczy wywołać metodę tego obiektu:

Application.Icon.LoadFromFile('mojaIkonka.ico');

A jeśli już chcesz przekopiować zawartość z jednego obiektu do drugiego to używaj metody Assign, poza tym zabepiecz ten kod przed ewentualnymi wyciekami pamięci:

procedure ChangeApplicationIcon();
var
  LIcon: TIcon;
begin
  LIcon := TIcon.Create();
  try
    LIcon.LoadFromFile('mojaIkonka.ico');
    Application.Icon.Assign(LIcon);
  finally
    LIcon.Free();
  end;
end;

I przenieś ten kod do głównego pliku projektu, bo nie jest on zależny od istnienia formularza ani nijak nie jest z nim powiązany. Dotyczy całej aplikacji, więc nie powinien być w module jakiegoś tam okna.

0
  1. może lepiej było by dodać ikonkę do zasobów ? wtedy odpada dodatkowy plik "*.ico"
  2. nie wiem jak jest w Delphi 7, ale w D2010 ikonkę aplikacji można dodać do projektu z poziomu opcji projektu
0

Jeszcze niech się okaże, że to problem XY i autor zamiast zadać konkretne pytanie to wynalazł sobie koło zapasowe i pyta jak je zmontować do kupy.

Jeśli faktycznym problemem jest po prostu ustalenie ikony aplikacji (m.in. pliku wykonywalnego) to oczywiście że można ją dodać w ustawieniach projektu, nawet w Delphi7. Żeby ustalić ikonkę formularzy to też można to sobie wyklikać w oknie inspektora obiektów, nawet dla każdego okna inną.

1 użytkowników online, w tym zalogowanych: 0, gości: 1