Cygwin / Windows 10 cli:是否有可以對焦應用程式/視窗的命令?

Cygwin / Windows 10 cli:是否有可以對焦應用程式/視窗的命令?

我正在尋找一個可以使視窗成為焦點的命令。該命令必須在 cygwin 終端機中工作,但我想該命令將內置於 Windows 中,因此值得說的是我使用的是 Windows 10。

我基本上是在問這個,但使用 cygwin 而不是 Ubuntu:用於聚焦特定視窗的 Bash 指令

這些 vbs 腳本看起來很有前途,但是當我在 cygwin 中執行它們時,它們既不會出錯,也不會改變焦點。Windows 中的 CMD 命令切換到已開啟的應用程式就好像這AppActivate是無稽之談。

我正在wscript.exe switch.vbs "App Title"使用這個腳本運行:

WScript.CreateObject("WScript.Shell").AppActivate(WScript.Arguments.Item(0))

說明我想要此功能的原因可能是明智的:我這樣做是為了當我的測試從 cygwin 命令列運行時,它會像 Windows 10 處理任何正常事件的方式通知我:使用事件氣泡。我用來建立該通知 ( notifu) 的命令會根據氣泡發生的情況返回不同的退出代碼。如果我單擊它,它將返回退出代碼 3,但無論聚焦的視窗仍保持焦點。相反,我想單擊氣泡並聚焦我的 cygwin 終端。

答案1

如何將焦點設定到視窗?

您可以使用nircmd win focus ...

例子:

nircmd win focus title "bash"

bash我的 Cygwin 終端機視窗的標題在哪裡。

句法

nircmd win [action] [find] [window to find] [Additional Parameters]

有不同的方法來指定windows to find

handle: Finds the desired window by specifying the handle of the window in [window to find] parameter.
id: Finds the desired child window by specifying the id of the child window. Useful only for child windows.
class: Finds the desired window by specifying the class name of the window in [window to find] parameter.
title: Finds the desired window by specifying the exact title of the window in [window to find] parameter.
stitle: Finds the desired window by specifying the first few characters of the window in [window to find] parameter.
ititle: Finds the desired window by specifying a sequence of characters that exists in the window title.
alltop: All top windows.
alltopnodesktop: All top windows, except of desktop and tray windows.
active: The current active window.
foreground: The window in foreground.
desktop: The desktop window
process:Finds the desired window by specifying process ID (for example: /3412) or process name (for example: firefox.exe).

來源尼爾姆溫

NirCmd - Windows 命令列工具下載nircmd(下載連結位於頁面底部)。

相關內容