WinSet

ウィンドウを常に最前面表示状態にしたり、半透明にしたりする

WinSet, SubCmd, Value [, WinTitle, WinText,  ExcludeTitle, ExcludeText]

Parameters

引数名説明
SubCmd,Value 下記参照。
WinTitle ウィンドウタイトルなど。
ウィンドウ指定の方法参照。
WinText ウィンドウに含まれるテキスト
ExcludeTitle 除外タイトル
ExcludeText 除外テキスト

SubCmd,Value

Top
ウィンドウを一番手前に移動する。アクティブにはならない。システムの設定によっては動作しない。
Bottom
ウィンドウを他のすべてのウィンドウの後ろに移動する。
AlwaysOnTop ,ON|OFF|TOGGLE
Topmost ,ON|OFF|TOGGLE
常に最前面表示状態の設定。TOGGLEはON/OFFを切り替える。
Disable
ウィンドウを操作不可能にする
Enable
ウィンドウを操作可能にする
Redraw
ウィンドウを再描画させる。
Style,N|ExStyle,N
ウィンドウのスタイルを設定する。
Nに指定する値については、ウィンドウスタイル一覧を参照。
Nの前に「+」をつけると、そのスタイルを既存のスタイルに追加、「-」をつけるとスタイルを削除、「^」をつけるとスタイルの有無を反転。
ErrorLevelは、正常終了時は「0」、適用不可能なスタイルを指定した場合などは「1」になる。
Region[,Options]
ウィンドウの表示領域を変更する。
Optionsを省略した場合、通常表示に戻る。
Optionsには、以下のものを半角スペース区切りで指定する。
ErrorLevelは、正常終了時は「0」、適用不可能なスタイルを指定した場合などは「1」になる。
Wn Hm x-y
幅n高さmの矩形の範囲を表示する。x,yが矩形の左上の座標(ウィンドウの左上からの相対座標)になる。負の値も指定可能。(例:「W640 H480 10-10」「W640 H480 -10--10」)
Rw-h Wn Hm x-y
角の丸い矩形にする。角は幅w、高さhの楕円になる。(例:「R30-30」)
単に「R」とした場合、「R30-30」としたことになる。
E Wn Hm x-y
矩形の代わりに、矩形に接する楕円になる。
x1-y1 x2-y2 x3-y3 ...
各xn-ynの組を頂点とした多角形の領域を表示する。(例:「0-0 0-30 30-0」)
「100-100 0-100 100-0」として|×|型にしたりすることも可能。
最大2000組まで指定可能。
Wind x1-y1 x2-y2 x3-y3 ...
Alternatingメソッドの代わりにWindingメソッドを使用する(?)
Transparent ,0...255|OFF
Trans ,0-255|OFF
ウィンドウを半透明にする。( 2000/XP専用)
0...255の間で透明度を指定。(0で完全に不可視)
「OFF」を指定すると、半透明を完全に解除する。(255にしただけでは、半透明の計算が行われるため、パフォーマンスが悪くなる)
TransColor ,Color [N]
ウィンドウの指定した色の部分だけを透明にする(XP専用)
透明になった部分はクリックできず、下のウィンドウがクリックされる。 Colorには透明にしたい色を色名かRRGGBBの書式で指定。
Nに透明度を0...255の値で指定することができる。(例:「WinSet, TransColor, EEAA99 150)
ウィンドウの透明色を変更する場合は、一旦Transparent,OFFを実行して透明化を解除する必要がある。
GUIウィンドウで「Gui,-Caption」を併用する場合は、先に「WinSet,TransColor」を実行しておく必要がある。

Related

WinGet, WinHide, WinSetTitle, WinMove, WinActivate

Example(s)

WinSet, Transparent, 200, Untitled - Notepad ; Make the window a little bit transparent.
WinSet, TransColor, White, Untitled - Notepad ; Make all white pixels invisible.
WinSet, AlwaysOnTop, toggle, Calculator ; Toggle the always-on-top status of Calculator.

; Longer Example:
; Here are some hotkeys that demonstrate the effects of "Transparent" and
; "TransColor".  NOTE: If you press one of the hotkeys while the mouse cursor
; is hovering over a pixel that is invisible as a result of TransColor, the window
; visible beneath that pixel will be acted upon instead!  Also, Win+G will
; have an effect only on Windows XP because retrieval of transparency settings
; is not supported by Windows 2000:

#t::  ; Press Win+T to make the color under the mouse cursor invisible.
MouseGetPos, MouseX, MouseY, MouseWin
PixelGetColor, MouseRGB, %MouseX%, %MouseY%, RGB
; In seems necessary to turn off any existing transparency first:
WinSet, TransColor, Off, ahk_id %MouseWin%
WinSet, TransColor, %MouseRGB% 220, ahk_id %MouseWin%
return

#o::  ; Press Win+O to turn off transparency for the window under the mouse.
MouseGetPos,,, MouseWin
WinSet, TransColor, Off, ahk_id %MouseWin%
return

#g::  ; Press Win+G to show the current settings of the window under the mouse.
MouseGetPos,,, MouseWin
WinGet, Transparent, Transparent, ahk_id %MouseWin%
WinGet, TransColor, TransColor, ahk_id %MouseWin%
ToolTip Translucency:`t%Transparent%`nTransColor:`t%TransColor%
return

; Examples of "WinSet Region":
WinSet, Region, 50-0 W200 H250, WinTitle  ; Make all parts of the window outside this rectangle invisible.
WinSet, Region, 50-0 W200 H250 R40-40, WinTitle  ; Same as above but with corners rounded to 40x40.
WinSet, Region, 50-0 W200 H250 E, WinTitle  ; An ellipse instead of a rectangle.
WinSet, Region, 50-0 250-0 150-250, WinTitle  ; A triangle with apex pointing down.
WinSet, Region,, WinTitle ; Restore the window to its original/default display area.

; Here is a region with a more complex area. It creates a see-through rectangular hole inside a window.
; There are two rectangles specified below: an outer and an inner.  Each rectangle consists of 5 pairs
; of X/Y coordinates because the first pair is repeated at the end to "close off" each rectangle.
WinSet, Region, 0-0 300-0 300-300 0-300 0-0   100-100 200-100 200-200 100-200 100-100, WinTitle