Power Automate for Desktop ウィンドウを画面中央に移動する
Power Automate for Desktopで操作するウィンドウを監視するために画面中央に配置しておくと便利です。そんなフローを作ってみました。 フローの概要は次の通りです。 1. 「画面の解像度を取得する」アクションでモニターの幅と高さを取得します。 ここではモニターに1を指定しています。モニターが複数ある場合は適宜指定する必要があると思います。 変数名はデフォルトの、MonitorWidth と MonitorHeight。(使わない変数はオフにしておいた方が変数ペインがすっきりするし、誤って使う事も少なくなるでしょう) 2. 「ウィンドウの詳細を取得する」アクションで、ウィンドウの場所とサイズを取得します。この例では「メモ帳」のウィンドウを指定しています。 変数名はデフォルトの WindowProperty WindowProperty には 503, 843, 1060, 802 のように、ウィンドウ左上の X 値、Y値、ウィンドウの幅、ウィンドウの高さが CSV 形式で保存されます。 詳細については次のページを参考にするとよいでしょう。 ウィンドウの位置とサイズを取得する ウィンドウ指定の際に、うまく指定できず、ウィンドウ内の別の要素を取得してしまった場合は、ウィンドウを選択し直します。 3. 「テキストの分割」アクションを使って WindowProperty をリストに変換します。 変数名はデフォルトの TextList 4. 「テキストを数値に変換」アクションを使って、ウィンドウ幅を取り出します。 式は %TextList[2]% 、変数名は uWindowWidth 。(私はユーザー定義変数は頭にuをつけて区別しています。また、将来変数が追加されたときの衝突回避も多少期待しています) 5. 同様にウィンドウ高さを取り出します。 式は %TextList[3] % 、変数名は uWindowHeight 。 6. 「数値の切り捨て」アクションを使って、ウィンドウ移動先の、ウィンドウの左上座標のX値を計算します。 式は %MonitorWidth / 2 - uWindowWidth / 2% 、変数名は X 。 計算式は次の図を参考にしてください。 7. 同様にY値を求めます。 式は %MonitorHeight / 2 - uWin...