Delphi 10.1 Berlinでウィンドウのスケールを取得するには

Delphi 10.1 Berlinから、IFMXWindowService.GetWindowScaleは非推奨になりました。

これまでは次のようにして、ウィンドウのスケールを取得していました。

procedure TForm1.FormCreate(Sender: TObject);
var
ws: IFMXWindowService;
begin
if TPlatformServices.Current.SupportsPlatformService(IFMXWindowService, ws) then
    Memo1.Lines.Add('スケール:' + FloatToStr(ws.GetWindowScale(Self)));  
    //[DCC 警告] Unit1.pas(34): W1000 シンボル 'GetWindowScale' を使用することは推奨されていません
end;

この方法は警告が表示されるようになりました。

Delphi 10.1 BerlinからはフォームのハンドルのScaleプロパティを使用します。

procedure TForm1.FormCreate(Sender: TObject);
begin
  Memo1.Lines.Add('スケール:' + FloatToStr(Self.Handle.Scale));
end;

Simulator_Screen_Shot_2016

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください