Перейти к содержанию
Fire Monkey от А до Я
  • 0

[Windows] Как поменять иконку формы со стилизованной рамкой?


Brovin Yaroslav

Вопрос

  • Администраторы

По мотивам темы: [Windows] Как поменять иконку формы?

 

Как поменять иконку у формы со стилизованной рамкой под Windows?

Ссылка на комментарий

Рекомендуемые сообщения

  • 0
  • Администраторы

При стилизованной рамке окна, иконка кэшируется. Первый раз она запрашивается в момент первой отрисовки формы. Поэтому в вашем случае ее нужно задать сразу после создания хендла а именно в CreateHandle.

  TForm15 = class(TForm)
    StyleBook1: TStyleBook;
  protected
    procedure CreateHandle; override;
  end;

implementation

uses
  VCL.Graphics, Winapi.Windows, Winapi.Messages, FMX.Platform.Win;

{ TForm15 }

procedure TForm15.CreateHandle;
var
  NewAppIcon: TIcon;
begin
  inherited;
  NewAppIcon := TIcon.Create;
  NewAppIcon.LoadFromFile('c:\icon.ico');

  SendMessage(ApplicationHWND, WM_SETICON, 1, NewAppIcon.Handle);
  SendMessage(WindowHandleToPlatform(Handle).Wnd, WM_SETICON, 1, NewAppIcon.Handle);
end;
Ссылка на комментарий
Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...