2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

AutoHotkey スレッド part28

342 :名無しさん@お腹いっぱい。 :2020/08/31(月) 23:25:39.14 ID:oOBjBlAHM.net
いまのウィンドウからみて、タスクバー上で1つ隣のウィンドウをアクティブにする処理をしたいんだけど、
何かいい方法ありませんかね?

↓↓絶対もっとスマートな方法あると思うんだけど、思いつかぬ……

やりたいことは例えば、タスクバーの左から順に
(1)エクスプローラー、(2)Excel、(3)Firefox、(4)Google Chrome、(5)メモ帳
みたいに並んで起動しているときに、(前提として、タスクバーボタンを結合していないものとして)
2番目のExcelがアクティブになっている状態でスクリプトを実行したら、
3案目のFirefoxがアクティブになる感じ。
※元々Firefoxが最小化されているか、裏に回っているかに関わらず、タスクバーの該当アプリを押したときと同じ挙動で前面に来てほしい。
※Excelは単に裏に回るだけで、最小化されたりはしない。(これもタスクバーで別のウィンドウが選択されたときと同じ挙動)

【いま考えている方法】
まず、現在のアクティブウィンドウのIDを取得する。……(A)
Win+1など、Win+数字のショートカットで、タスクバーの該当番目にあるウィンドウがアクティブになることを利用して、
Win+1〜Win+9まで順番にSendして、(A)で取得したIDと同じウィンドウがアクティブになれば、
その次の番号のウィンドウがアクティブになったら処理を終了。

【たくさんの欠点】
・問答無用で左から順にアクティブ化するため、最小化していたウィンドウも通常サイズになってしまう。
・重なり順序も変わってしまう。
・処理に時間がかかる。(Ctrl+Tab的な感覚で行いたい)
・9つまでしか使えない。

どなたか良い手法をご存知でしたら教えてください。

総レス数 786
295 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★