Показать сообщение отдельно
  #2  
Старый 21.07.2013, 20:36
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Цитата:
Сообщение от Gareth
Почему так получается? Как заставить не исчезать иконку, что делаю не так? Скажите пожалуйста!

иконка пропадает, т.к. теряется после отрисовки.
Тебе надо сохранить эту иконку, что бы потом, при следующий перерисовке формы она отрисовалась.
Можно попробовать так:
Код:
procedure TForm1.sButton1Click(Sender: TObject);
var H:HICON;
IconIndex:Word;
begin
if sopendialog1.Execute then
begin
  S:=sopendialog1.FileName;
  IconIndex := 1;
  h := ExtractAssociatedIcon(hInstance,PChar(S), IconINdex);
  image1.Picture.Icon.Handle := h;
  image1.Picture.Graphic := image1.Picture.Icon;
end;
end;
Ответить с цитированием