画面の窓の配置と起動のしかたを記録して、ボタン一つで元どおりに並べる社内アプリ / 版 2026-11-02(ビルド 26 11/02 18:58)/ スタッフ限定・社外に出さないこと
動画は試験台のディスプレイ 3(DMX-USB-PRO モニター 6 枚・カメラ・Art-Net の試験の窓)で撮りました。操作はすべてアプリの命令の口(ファイルに 1 行書く方式)から行い、マウスは使っていません。LAN のアドレスが写る欄はぼかしています。音声: VOICEVOX:No.7
試験台のモニター類のように、いつも同じ並べ方で使う窓を、毎回開いて並べ直すのは手間がかかります。DisplayLayoutKeeper は、選んだ画面(既定はディスプレイ 3)にある窓について、次のことを記録しておき、あとで呼び出して元どおりに並べ直します。
再現するとき、無い窓はアプリを起動してから並べます。試験台を全部閉じても、ボタン一つで同じ画面に戻せます。手で並べて微妙にずれた窓を、ぴったりそろえる「きれいに合わせる」もあります。
スタートメニューの「DisplayLayoutKeeper」を開きます。窓で起動できるのは1 本だけです(2 本目を開くと「既に起動しています」と出ます)。窓の位置・大きさ、選んだ画面、「無い窓は起動する」「控えも出す」のチェックは、閉じるときに覚えます(exe と同じフォルダの config.json)。
記録は exe と同じフォルダの layouts に、1 回 1 ファイル(人が読める JSON)で置きます。
| 番号 | 部品 | 役目 |
|---|---|---|
| 1 | 画面 | 記録する画面を選ぶ。既定は DISPLAY3(右端の 2560x1440) |
| 2 | 記録の名前 | 記録に付ける名前。空なら日時だけ |
| 3 | 今の配置を記録 | 選んだ画面の窓を記録する |
| 4 | きれいに合わせる | 今の画面の窓の辺を、近く(30 ピクセル以内)の画面の端・ほかの窓の辺へぴったり寄せる(4 章) |
| 5 | 選んだ記録を再現 | 左の一覧で選んだ記録のとおりに並べ直す(一覧のダブルクリックでも同じ) |
| 6 | 無い窓は起動する | 外すと、今ある窓を並べ直すだけで、アプリは起動しない |
| 7 | 記録の一覧 | 新しい順。灰色の行は自動の控え(7 章)。上の「控えも出す」を外すと控えを隠す。「名前を変える」「削除」は選んだ記録に対して |
| 8 | 見取り図 | 選んだ記録の窓の枠を、画面の形に縮めて描く。灰色の枠は起動しない窓、破線は最小化していた窓 |
| 9 | 窓の一覧 | 記録に入っている窓。起動(チェック)・題・アプリ・起動の引数・位置と大きさ・状態。チェックを外した窓は、無くても起動しない(すぐ記録のファイルに書く) |
| 10 | ログ | 操作の結果(合った窓の数・起動・置いた数・失敗・寄せた量) |
手で並べた窓は、端が数ピクセル離れたり重なったりしています。「きれいに合わせる」を押すと、選んだ画面の窓(最大化・最小化していないもの)の 4 つの辺を、近く(既定 30 ピクセル以内)にある次のどれかへ寄せます。
Windows の窓には左右と下に目に見えない縁(約 7 ピクセル)があります。見た目の枠どうしで合わせるので、縁のぶんの隙間もできません。合わせる前の配置は自動で控えるので、気に入らなければ控えを再現して戻せます。
そろえたら、5 章のとおり記録しておきます。
子の窓(アプリの本体が開く窓。カメラの「Zoom (LCD)」など)も記録しますが、単独では起動できないので、チェックは最初から外れています。本体を起動したときは、子の窓が出るまで最大 15 秒待ってから置きます。確認や保存のダイアログは記録しません。
次の順に動きます。
| 図 | 様子 |
|---|---|
| 図 5 試しに、ディスプレイ 3 の窓を全部閉じたところ | |
| 図 6 再現で、アプリを順に起動して並べたところ |
番号つきの窓(DMX-USB-PRO モニター #1〜#7)は、記録どおりの番号で起動します。ほかの番号の窓を、代わりに動かすことはありません。
「再現」と「きれいに合わせる」の前には、そのときの配置を自動で控えます。一覧で灰色の「(再現前の控え)」「(合わせる前の控え)」です。新しい 20 件まで残り、古いものから自動で消えます。
| こんなとき | こうする |
|---|---|
| 窓が「動かせない」と出る | 管理者として動いているアプリの窓は、Windows の決まりで動かせません。そのアプリを普通に起動し直す |
| 窓が合わない(「窓が無い」と出る) | 題が記録と大きく変わっている。今の窓で記録し直すか、layouts\*.json の TitleKey を今の題に直す |
| エクスプローラーの窓が起動しない | エクスプローラーなどは、記録はするが起動しない(チェックが外れている)。位置だけ戻す |
| 同じアプリが 2 つ起動した | 窓の一覧で、そのアプリの片方の「起動」のチェックを外す |
| きれいに合わせたら変になった | 一覧の「(合わせる前の控え)」を選んで再現すると戻る |
tool_cs のアプリは「AI が操作・観測できる」ことを基本にしています。DisplayLayoutKeeper は次の 3 つの口を持っています。
DisplayLayoutKeeper.exe --save [名前] [--display \\.\DISPLAY3] … 今の配置を記録 DisplayLayoutKeeper.exe --restore <latest|名前|ファイル名の一部> [--no-launch] … 再現(先に控える) DisplayLayoutKeeper.exe --align [寄せる範囲px 既定30] … きれいに合わせる(先に控える) DisplayLayoutKeeper.exe --list … 状態ファイルを書き直すだけ
latest は、控えを除いていちばん新しい記録です。窓(GUI)を開いていても使えます。
e:\tmp\ai_layout\cmd.inbox.txt に 1 行 1 命令で書くと、窓のボタンと同じ動きをします(一覧・見取り図・ログも変わる)。この説明動画も、この方法で操作しました。
save 名前 / align [px] / select latest|名前|上からの番号 / selectwin 番号 / restore [nolaunch|launch] / launch on|off / showauto on|off / display DISPLAYn / topmost on|off / bounds x y w h / rects
e:\tmp\ai_layout\latest.txt(記録の一覧と直近の結果)・status.json(同じ内容を構造化)・README_AI.txt(AI 向けの説明)。
DisplayLayoutKeeper 2026-11-02 / スタッフ限定。図と動画の画面は試験台のディスプレイ 3 で撮ったもの(図は動画の録画から切り出したもの・LAN のアドレスの欄はぼかしてある)。