ガイド
スリープ復帰後にウィンドウが別のモニターへ移動するときの直し方
PCをスリープから復帰させてサインインすると、すべてのウィンドウがメインモニターに積み重なり、ほかの画面は空っぽ、しかもサイズまで縮んでいる。デュアルモニターやトリプルモニターを使うWindows 10/11ユーザーが最もよく遭遇する不満のひとつで、たいていはアプリのせいではありません。この記事では原因と、まず試すべきWindows・モニターの設定、そしてDisplayForgeがウィンドウの乱れを検知して自動で元の位置に戻す方法を説明します。
-
スリープ後にウィンドウが動く理由
多くのモニター、特にDisplayPortやUSB-Cで接続したモニターは、省電力状態に入るとケーブルを抜いたのと同じように振る舞います。Windowsはモニターが消えたと判断して、そのウィンドウを残った画面へ移します。少しあとでモニターが復帰しても、ウィンドウは移された場所に残ったままです。ロック解除、リモートデスクトップで解像度が変わったとき、グラフィックドライバーが再起動したときにも同じことが起こります。モニターが復帰する順番が変わると、ディスプレイ1と2の番号が入れ替わることさえあります。
-
まずWindowsとモニターの設定を試す
Windows 11なら、設定 > システム > ディスプレイ > マルチディスプレイで「モニター接続に基づいてウィンドウの位置を記憶する」がオンになっているか確認しましょう。モニターのOSDメニューにディープスリープ、DP省電力、入力の自動選択といった項目があれば、オフにするとスリープ中の切断を防げる場合があります。グラフィックドライバーやモニターのファームウェア更新で改善する環境もあります。どれも無料で試せますが、効果は環境しだいです。Windows 10にはこの設定がなく、Windows 11でも最大化ウィンドウや同じアプリの複数ウィンドウはうまく戻らないことがよくあります。
-
DisplayForgeの自動復元をオンにする
DisplayForgeをインストールし、「ウィンドウ位置プロファイル」の「自動化」で「モニター変更・スリープ・ロック解除の後にウィンドウを復元」をオンにします。以後DisplayForgeはモニター構成ごとにウィンドウ位置のスナップショットを数秒おきに静かに更新します。モニター構成は変わっていないのに3つ以上のウィンドウが急にメインディスプレイへ集まった場合、つまりスリープ復帰やロック解除でよく見られる症状が出たら、その直前のスナップショットに戻します。モニターが切断されて再接続された場合は、構成が落ち着くのを待ってからその構成のスナップショットを復元します。
-
名前付きプロファイルを保険にする
自動スナップショットは直近の状態を追いかけます。いつも使う基本の配置があるなら、ウィンドウを整えてから「現在の状態を保存」でプロファイルを作っておきましょう。「プロファイルのオプション」でショートカット キーを割り当てれば、万一乱れてもキー1つで直せます。「この構成が接続されたら自動で適用」をオンにすれば、いつものモニターが戻ったときに自動スナップショットよりこのプロファイルが優先されます。モニターを番号ではなくデバイスとモデルで識別するので、ディスプレイ1と2が入れ替わっても別の画面へ飛ぶことはありません。
-
動かさないアプリと細かな設定
ゲームランチャーのように自分で位置を決めるアプリは触らないほうが無難です。「位置を変更しないアプリ」にexample.exeのようなプログラム名で追加します。「アプリの位置を記憶」もオンにしておくと、アプリを閉じたときにウィンドウの位置を覚えておき、次に開いたとき同じモニターの同じ場所に表示します。復元結果が気に入らなければ、「直前の復元を元に戻す」でいつでも戻せます。
よくある質問
リモートデスクトップ接続後にウィンドウが集まる問題にも効きますか?
多くの場合は効きます。リモートデスクトップのセッションは解像度を変えてウィンドウを1画面に集めがちですが、本体に戻ったときに同じ乱れ検知が働き、直前のスナップショットに戻します。
自分でウィンドウを動かしても元に戻されてしまいませんか?
いいえ。モニター構成が変わらないまま数秒のうちに複数のウィンドウがメインディスプレイに集まったとき、またはモニター構成そのものが変わったときだけ動作します。普段のドラッグやスナップで復元が走ることはありません。
DisplayForgeは常に起動している必要がありますか?
はい、トレイで動いている間にモニターの変化を監視します。設定で「スタートアップ時に起動」をオンにすれば再起動後も常に動作します。オフラインで動作し、情報を外部に送ることはありません。