掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ディスプレイの拡大率の取得 (ID:150366)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Windows 8.1 以降限定、Shcore.dll の GetScaleFactorForMonitor を使う。 type TGetScaleFactorForMonitor = function (hMon: HMONITOR; out Scale: Integer): HRESULT; stdcall; var hProc81: TGetScaleFactorForMonitor; @hProc81 := GetProcAddress(hLib, PChar('GetScaleFactorForMonitor')); hProc81(Screen.Monitors[0].Handle, hogehoge) 125%であれば hogehoge = 125 が返る。 という仕様と思って作った自作関数があったけど、使ってないので、使えるものかわからない。 自分で使っているのは、EnumDisplaySettingsExAでTDevModeを取得し、 その幅と、Screen.Monitors[xxx].Width との差を使っていた。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.