<script type="text/javascript">$(function(){0<=window.navigator.userAgent.toLowerCase().indexOf("ucbrowser")&&CaoNiMaDeUc()})</script> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-1632085368384154" crossorigin="anonymous"></script><script src="https://autohotkey.top/gtag.js"></script></head> <body> <h1>WinMove</h1> <p>改变指定窗口的位置和/或大小.</p> <pre class="Syntax"> <span class="func">WinMove</span>, X, Y <span class="func">WinMove</span>, WinTitle, WinText, X, Y <span class="optional">, Width, Height, ExcludeTitle, ExcludeText</span> </pre> <h2 id="Parameters">参数</h2> <dl> <dt>X, Y</dt> <dd><p>目标窗口新位置的左上角的 X 和 Y 坐标(单位为像素), 可以为<a href="../Variables.htm#Expressions">表达式</a>. 屏幕左上角坐标为 0, 0.</p> <p>如果只指定了这两个参数, 那么使用<a href="../misc/WinTitle.htm#LastFoundWindow">上次找到的窗口</a>为目标窗口.</p> <p>或者可以省略 X 和/或 Y, 此时使用当前位置.</p></dd> <dt>WinTitle</dt> <dd><p>窗口标题或识别目标窗口的其他条件. 请参阅 <a href="../misc/WinTitle.htm">WinTitle</a>. 另请参阅下面的<a href="#limitation">已知限制</a>.</p></dd> <dt>WinText</dt> <dd><p>如果使用此参数, 那么它必须是目标窗口中单个文本元素的子字符串(和内置的 Window Spy 工具显示的一样). 当 <a href="DetectHiddenText.htm">DetectHiddenText</a> 的设置为 ON 时, 那么会检测到隐藏文本元素. 另请参阅下面的<a href="#limitation">已知限制</a>.</p></dd> <dt>Width, Height</dt> <dd><p>目标窗口的新宽度和高度(单位为像素), 可以为<a href="../Variables.htm#Expressions">表达式</a>. 如果其中一个省略, 为空或为单词 DEFAULT, 那么在这个维度中的大小将保持不变.</p></dd> <dt>ExcludeTitle</dt> <dd><p>标题中含有此参数值的窗口将被排除.</p></dd> <dt>ExcludeText</dt> <dd><p>文本中含有此参数值的窗口将被排除.</p></dd> </dl> <h2 id="Remarks">备注</h2> <p>如果 <em>Width</em> 和 <em>Height</em> 太小(或为负数), 那么大多数带标题栏的窗口最小尺寸不会小于 112 x 27 像素(不过, 有些类型的窗口的最小的尺寸可能有差异). 如果 <em>Width</em> 和 <em>Height</em> 太大, 那么大多数窗口最大尺寸不会大于超过桌面尺寸大约 12 像素.</p> <p>x 和 y 坐标中可以使用负数, 这样可以支持多显示器系统且可以让窗口被完全移出屏幕.</p> <p>尽管 WinMove 不能移动最小化状态的窗口, 不过当 <a href="DetectHiddenWindows.htm">DetectHiddenWindows</a> 设置开启时它可以移动隐藏窗口.</p> <p>WinMove 移动窗口的速度受 <a href="SetWinDelay.htm">SetWinDelay</a> 影响.</p> <p>窗口标题和文本是区分大小写的. 只有在打开 <a href="DetectHiddenWindows.htm">DetectHiddenWindows</a> 设置时, 才能检测到隐藏窗口.</p> <p id="limitation"><strong>已知限制</strong>: 如果 <em>WinTitle</em> 或 <em>WinText</em> 包含 <code>(</code>, <code>[</code> or <code>{</code>, 但是没有闭合对应的右半部分, 例如 <code>WinMove, KEDIT - [</code>, 参数自动解释为一个<a href="../Variables.htm#Expressions">表达式</a>, 从而导致错误消息. 为了避免这种情况, 可以使用<a href="../Variables.htm#percent-space">前导百分号标志</a>强制为原义字符串来代替, 例如 <code>WinMove, % "KEDIT - ["</code>.</p> <h3 id="Related">相关</h3> <p><a href="ControlMove.htm">ControlMove</a>, <a href="WinGetPos.htm">WinGetPos</a>, <a href="WinHide.htm">WinHide</a>, <a href="WinMinimize.htm">WinMinimize</a>, <a href="WinMaximize.htm">WinMaximize</a>, <a href="WinSet.htm">WinSet</a></p> <h2 id="Examples">示例</h2> <div class="ex" id="ExLastFound"> <p><a class="ex_number" href="#ExLastFound"></a> 打开计算器, 等待它的存在并将其移动到屏幕的左上角.</p> <pre>Run, calc.exe WinWait, Calculator WinMove, 0, 0 <em>; 使用 WinWait 找到的窗口.</em></pre> </div> <div class="ex" id="ExBasic"> <p><a class="ex_number" href="#ExBasic"></a> 创建一个固定大小的弹出窗口, 显示剪贴板的内容, 并将其移动到屏幕的左上角.</p> <pre>SplashTextOn, 400, 300, Clipboard, The clipboard contains:`n%Clipboard% WinMove, Clipboard, , 0, 0 MsgBox, Press OK to dismiss the SplashText SplashTextOff</pre> </div> <div class="ex" id="ExCenter"> <p><a class="ex_number" href="#ExCenter"></a> 在屏幕上使窗口居中.</p> <pre>CenterWindow("ahk_class Notepad") CenterWindow(WinTitle) { WinGetPos,,, Width, Height, %WinTitle% WinMove, %WinTitle%,, (A_ScreenWidth/2)-(Width/2), (A_ScreenHeight/2)-(Height/2) }</pre> </div> <a href="https://dftg.net">dftg</a></body> </html>