</head> <body> <h1>WinSetTransparent</h1> <p>指定されたウィンドウを半透明にします。</p> <pre class="Syntax"><span class="func">WinSetTransparent</span> N, <span class="optional">WinTitle, WinText, ExcludeTitle, ExcludeText</span></pre> <h2 id="Parameters">パラメータ</h2> <dl> <dt>N</dt> <dd> <p>型:<a href="../Concepts.htm#numbers">整数</a>または<a href="../Concepts.htm#strings">文字列</a></p> <p>透明度を有効にするには、0から255の間で透明度を示す数値を指定する:0はウィンドウを不可視にし、255は不透明にする。</p> <p><code>"Off"</code>(大文字小文字を区別しません)または空の文字列を指定すると、ウィンドウの透明度を完全にオフにすることができます。これは<code><a href="WinSetTransColor.htm">WinSetTransColor</a> "Off"</code>と機能的に同じです。Offを指定すればパフォーマンスが向上し、システムリソースの使用量が減る可能性があるため、255を指定するのとは異なります。ただし、デスクトップコンポジションが無効になっているときに限られるでしょう。</p> </dd> <dt>WinTitle, WinText, ExcludeTitle, ExcludeText</dt> <dd> <p>型:<a href="../Concepts.htm#strings">文字列</a>、<a href="../Concepts.htm#numbers">整数</a>または<a href="../Concepts.htm#objects">オブジェクト</a></p> <p>もしこれらの項目が未設定または省略されたときは、<a href="../misc/WinTitle.htm#LastFoundWindow">最後に見つかったウィンドウ</a>が使用されます。そうでないときは、<em>WinTitle</em>に <a href="../misc/WinTitle.htm">ウィンドウタイトルまたはターゲットウィンドウを識別するための他の基準</a>、および/または<em>WinText</em>にターゲットウィンドウの単一のテキスト要素からの部分文字列(付属のWindow Spyユーティリティを使えばわかります)を指定します。</p> <p><em>ExcludeTitle</em>と<em>ExcludeText</em>はウィンドウのタイトルまたはテキストで除外するために使用します。指定の仕方は<em>WinTitle</em>と<em>WinText</em>に似ていますが、<em>ExcludeTitle</em>はウィンドウのタイトル以外の基準(ウィンドウクラスやHWNDなど)を認識しません。</p> <p>ウィンドウのタイトルとテキストは大文字と小文字を区別します。<a href="DetectHiddenWindows.htm">DetectHiddenWindows</a>関数 と <a href="DetectHiddenText.htm">DetectHiddenText</a>関数で変更しない限り、初期設定では非表示ウィンドウは検出されず、非表示テキストは検出されます。<a href="SetTitleMatchMode.htm">SetTitleMatchMode</a>関数で変更しない限り、初期設定ではウィンドウのタイトルはその中のどこかに<em>WinTitle</em>または<em>ExcludeTitle</em>を含んでいれば一致します。</p> </dd> </dl> <h2 id="Error_Handling">エラー処理</h2> <p>ウィンドウが見つからないときは、<a href="Error.htm#TargetError">TargetError</a>がスローされます。</p> <p>変更が適用できなかったときは<a href="Error.htm#OSError">OSError</a>がスローされます。</p> <h2 id="Remarks">備考</h2> <p>例えば、タスクバーを透明にするには、<code>WinSetTransparent 150, "ahk_class Shell_TrayWnd"</code>を使います。同様に、古典的なスタートメニューを透明にするには、<a href="#ExTransStartMenu">例2</a>を参照してください。スタートメニューのサブメニューを透明にするには、<a href="#ExTransMenu">例3</a>のスクリプトも含めてください。</p> <p>Offを使用する前に透明度を255に設定すると、背景が黒くなるなどのウィンドウ再描画の問題を回避できるかもしれない。それでもウィンドウが正しく再描画されない場合は、<a href="WinRedraw.htm">WinRedraw</a>を参照してください。</p> <p>マウスカーソルの下にあるウィンドウのIDは、<a href="MouseGetPos.htm">MouseGetPos</a>関数で取得できます。</p> <h2 id="Related">関連</h2> <p><a href="WinSetTransColor.htm">WinSetTransColor</a>、<a href="Win.htm">Win関数</a>、<a href="Control.htm">Control関数</a></p> <h2 id="Examples">例</h2> <div class="ex" id="ExBasic"> <p><a class="ex_number" href="#ExBasic"></a> メモ帳を少し透明にする。</p> <pre>WinSetTransparent 200, "Untitled - Notepad"</pre> </div> <div class="ex" id="ExTransStartMenu"> <p><a class="ex_number" href="#ExTransStartMenu"></a> 古典的なスタートメニューを透明にします(スタートメニューのサブメニューをさらに透明にするには、<a href="#ExTransMenu">例3</a>を参照してください)。</p> <pre>DetectHiddenWindows True WinSetTransparent 150, "ahk_class BaseBar"</pre> </div> <div class="ex" id="ExTransMenu"> <p><a class="ex_number" href="#ExTransMenu"></a> すべてのメニューまたは選択されたメニューが表示されると同時にシステム全体を透明にする。このようなスクリプトは、それ自身のメニューを透明にすることはできないが、他のスクリプトのメニューを透明にすることはできることに注意すること。</p> <pre>SetTimer WatchForMenu, 5 WatchForMenu() { DetectHiddenWindows True <em>; Might allow detection of menu sooner.</em> if WinExist("ahk_class #32768") WinSetTransparent 150 <em>; Uses the window found by the above line.</em> }</pre> </div> <div class="ex" id="ExTransHotkey"> <p><a class="ex_number" href="#ExTransHotkey"></a> WinSetTransparentと<a href="WinSetTransColor.htm">WinSetTransColor</a>の効果を示す。注:TransColorの結果不可視になったピクセルの上にマウスカーソルがあるときにホットキーのいずれかを押すと、そのピクセルの下に表示されているウィンドウが代わりに操作されます!</p> <pre>#t:: <em>; Press Win+T to make the color under the mouse cursor invisible.</em> { MouseGetPos &amp;MouseX, &amp;MouseY, &amp;MouseWin MouseRGB := PixelGetColor(MouseX, MouseY) <em>; It seems necessary to turn off any existing transparency first:</em> WinSetTransColor "Off", MouseWin WinSetTransColor MouseRGB " 220", MouseWin } #o:: <em>; Press Win+O to turn off transparency for the window under the mouse.</em> { MouseGetPos ,, &amp;MouseWin WinSetTransColor "Off", MouseWin } #g:: <em>; Press Win+G to show the current settings of the window under the mouse.</em> { MouseGetPos ,, &amp;MouseWin TransDegree := WinGetTransparent(MouseWin) TransColor := WinGetTransColor(MouseWin) ToolTip "Translucency:`t" TransDegree "`nTransColor:`t" TransColor }</pre> </div> </body> </html>