ほうこうレポート

ほうようポケモン、こうもりポケモン。

ショートカット一つでウインドウを半透明にする方法【AutoHotKey】

はじめに

こういうことができます!!!!


ウインドウを半透明にしたい。

あるウインドウと別のウインドウを比較したいなんてときはままあると思うんですが、

どうせなら重ねたうえで、上のウインドウを半透明にしたい。

適当に探したらアプリはあるものの、どうにも使いづらい。なんかないもんか。

ありました。

環境:Windows

環境はWindows11ですが、Win10でもたぶんそりゃできます。


方法

細かい説明は後回し、まずはやってみましょう。

注意

「AutoHotKey」をダウンロード

以下のサイトからソフトをダウンロードしてください。
外国産ソフトなのでサイトは英語ですが、窓の杜で取り扱いもあるので安全ソフトのはず。無料。

https://www.autohotkey.comwww.autohotkey.com

AutoHotKeyとは?

自分で好きなショートカットをプログラミングできるよ!みたいなソフト。
僕もこれのために初めて触りました。
結構マジで何でもできます。

自分で習得したい人は、とりあえずこの公式?のチュートリアル記事でも読んでおきましょう。
ここでは無知識でもできるように説明します。
ahkscript.github.io

Download

アクセスしたらさっそくダウンロードボタン。

Download v2.0

v1.0は昔のやつです。

exeを実行

デフォルトだと多分ダウンロードフォルダに入ってるんじゃないでしょうか。
こいつを実行します。


これが出てきたらOK。
ウインドウは閉じちゃって大丈夫です。

ファイルを作成

デスクトップでもどこでもいいので、テキストファイルを作成してください。

テキストファイルに、以下をコピーします。
内容の説明は後述します。

^+t::{
	TransDegree := WinGetTransparent("A")
	
	;MsgBox(TransDegree)
	
	if TransDegree=""{
		WinSetTransparent 217, "A"
	}
	
	else if TransDegree=217{
		WinSetTransparent 179, "A"
	}

	else if TransDegree=179{
		WinSetTransparent 128, "A"
	}

	else if TransDegree=128{
		WinSetTransparent "off", "A"
	}

}


こんな感じに。


保存する際、文字コードはUTF-8、できればBOM付きで保存してください。
保存の時に画面に「UTF-8」と書いてあればOKです。
なければShiftJISだのUNSIだの書いてあるので、それをUTF-8に直してから保存します。


ファイルの拡張子変更

ファイル名はなんでもいいですが、
拡張子を.ahkにしてください。



拡張子ってなんぞって人は下のサイトでも見てください
askpc.panasonic.co.jp

実行

できたら、ダブルクリックしましょう。

何も起こらなかったら、成功。

多分正常に起動しています。

使ってみよう。

何かしらウインドウを開いている状態で、
「Ctrl」と「Shift」を押しながら「T」を押してみてください。


透明になります!!!
アクティブになっているウインドウに効きます。

透明度は4段階
全て「Ctrl」+「Shift」+「T」です。

何回か押してみてください。


注意

再起動したら、またさっき作ったファイルを実行しないといけません。
一度実行すればシャットダウンするまでは使えます。

→スタートアップ登録とかするといいかも。



以降は仕組みの解説です。
特に仕組み分からなくてもいい人はここまでで大丈夫です。
雑に書きます。

コードの内容

  • アクティブなウインドウの透明度を取得して
  • 透明度情報がないなら、85%の透明度に。
  • 85%の透明度なら、70%の透明度に。
  • 70%の透明度なら、50%の透明度に。
  • 50%の透明度なら、透明度なしに。

これだけ。
透明度の値は変えたければ変えてください。
ただし、0%を使うと完全消失してかったるいので注意。

おわりに

物作る人とかはなんだかんだ嬉しいですよね。

紹介:画面上の任意の場所からカラーコードを取得

物作る人が嬉しいつながりで一つ別記事を紹介。
画面上のどんな点からでもカラーコードが取得できたら嬉しい。
→Microsoftが出してて爆笑
embrabat-report.net