ディスプレイごとのdpi設定を試す
このようにDPIが表示されないので、ディスプレイごとのDPI設定値を表示できるアプリケーションを使ってみた。使ったプログラムは、WPF(Windows Presentation Foundation)のサンプルプログラムとして配布されているもので、Visual Studio 2013でコンパイルして利用する(実行可能なバイナリの提供はない)。
これを使って、スライダの位置と各ディスプレイのdpi値などをまとめたのが、前ページの表なのである。なお、この構成にさらにUSB接続の外部ディスプレイを追加してみたが、そのdpi設定値は96dpiに固定されてしまい、スライダの段階も変わらず5段で内蔵と外部ディスプレイのDPI設定値も同じだった。
2つのディスプレイが異なるdpi設定を持っている場合、ウィンドウがディスプレイ間を移動すると、ウィンドウが半分以上入った側のdpi値が有効になるため、ウィンドウのサイズが急に変わることがある。これは、アプリケーションによって理由が違う。まず、XPまでの解像度を無視するアプリケーションの場合、WindowsによるDPI仮想化が行なわれ、96dpiの環境でウィンドウが作られる。しかし、ウィンドウの描画は、96dpiのディスプレイに表示したときと同じ論理インチになるように調整されるため、異なるDPI値を持つディスプレイへウィンドウを移動させると、自動的に拡大縮小がなされるわけだ。
システムDPI値を利用してウィンドウサイズなどを決めているアプリケーション(System DPI Aware)は、自身の描画はシステムDPI値に基づいて行なう。しかし、ディスプレイごとにDPI値が異なる場合、やはりWindowsがウィンドウの拡大縮小を行ってサイズを調整する。これに対してディスプレイごとのDPI値に対応したアプリは、ウィンドウが半分を超えた段階でDPI値変更の通知を受ける。これにより、アプリケーションは、自身の表示サイズを変更する。
この連載の記事
-
第428回
PC
Google/Bingで使える検索オプション -
第427回
PC
WindowsのPowerShellのプロファイルを設定する -
第426回
PC
WindowsでAndroidスマホをWebカメラにする機能を試した -
第425回
PC
無料で使えるExcelにWord、Microsoft 365のウェブ版を調べた -
第424回
PC
Windowsの基本機能であるクリップボードについてあらためて整理 -
第423回
PC
PowerShellの今を見る 2つあるPowerShellはどっち使えばいい? -
第422回
PC
Windows 11の目玉機能が早くも終了、Windows Subsystem for Android(WSA)を振り返る -
第421回
PC
進化しているPowerToys LANで接続したマシンでキーボード/マウス共有機能などが追加 -
第420回
PC
Windowsプレビュー版に搭載されたsudoを試す -
第419回
PC
Windows Insider Previewが変わって、今秋登場のWindows 11 Ver.24H2の新機能が見えてきた? -
第418回
PC
Windows 11のスマートフォン連携は新機能が追加されるなど、いまだ進化している - この連載の一覧へ