Windows 7には、特定のアプリケーションでのみウィンドウを切り替えるショートカットがありますか? OS Xのこの機能はとても気に入っています。 Windowsでこれに相当するものは何ですか?
タスクバーの最初の10個のアプリケーションの1つである場合、 (勝つ)+n、ここでnはその位置番号であり、それを選択してウィンドウを循環します。 (使用する (ゼロ)(10番目のアプリケーションの場合)。たとえば、Windows ExplorerとInternet Explorerをタスクバーの最初の2つとして固定しているので、 +1 私のディレクトリを循環し、 +2 私のブラウザーを循環する。
いくつかの奇妙なメモ:
長押しすると 数字を入力(およびリリース)します n、Windowsはタスクバーでn番目のアプリケーションを開きます。繰り返しタップ n 上記のように、プログラムのウィンドウを循環します。次のように TranslucentCloudによって示されます 、次に入力した場合 Shift+nのように、逆の順序で循環します Alt+Tab そしてCtrl+Tab、など.
タスクバーのn番目のアプリケーションが固定されているが実行されていない場合、 +n それを開始します。
Windows 7と8では、キーボードだけから使用できる既知のショートカットはありませんが、 Ctrl 興味のあるアプリのタスクバーアイコンをクリックします。これを行うたびに、そのアプリに属する別のウィンドウが前面に表示されます。
さらに、プログラム VistaSwitcher が設定されます Win+F11 そして Alt+` 現在のアプリのウィンドウを切り替える。 (ところで、そのWebサイトはWindows 8はサポートされていないと述べていますが、8.1でそれで運が良かったです。これまでに見られた唯一の問題は、検索サイドバーのようなものを開いているウィンドウとしてリストすることがあります。私は単に無視しますそれ、YMMV。)
AutoHotkeyを使用できます: www.autohotkey.com
そして、このスクリプトをそこに置きます:
!`:: ; Next window
WinGetClass, ActiveClass, A
WinGet, WinClassCount, Count, ahk_class %ActiveClass%
IF WinClassCount = 1
Return
Else
WinGet, List, List, % "ahk_class " ActiveClass
Loop, % List
{
index := List - A_Index + 1
WinGet, State, MinMax, % "ahk_id " List%index%
if (State <> -1)
{
WinID := List%index%
break
}
}
WinActivate, % "ahk_id " WinID
return
!^`:: ; Last window
WinGetClass, ActiveClass, A
WinGet, WinClassCount, Count, ahk_class %ActiveClass%
IF WinClassCount = 1
Return
Else
WinGet, List, List, % "ahk_class " ActiveClass
Loop, % List
{
index := List - A_Index + 1
WinGet, State, MinMax, % "ahk_id " List%index%
if (State <> -1)
{
WinID := List%index%
break
}
}
WinActivate, % "ahk_id " WinID
return
私にとってはとてもうまくいきます。 Autohotkeyを使用して、コピー/貼り付け/元に戻す、Macのようなキーも作成しました。よく働く!
時代
Erasmoseに感謝しますが、autohotkeyスクリプトのバージョンでは、そのタイプのウィンドウが他にない場合、ウィンドウを最小化します。わからないこともあるので、最小化するのは面倒な方法なので、スクリプトを次のように変更しました。
!`:: ; Next window
WinGetClass, ActiveClass, A
WinGet, WinClassCount, Count, ahk_class %ActiveClass%
IF WinClassCount = 1
Return
Else
WinSet, Bottom,, A
WinActivate, ahk_class %ActiveClass%
return
!+`:: ; Last window
WinGetClass, ActiveClass, A
WinActivateBottom, ahk_class %ActiveClass%
return
あと、最後のクラスでctrlの代わりにshiftを使用するように変更しました。これは、他のいくつかのキーボードショートカットを使用して後方に戻るための修飾子だからです。オートホットキーが大好きです。
MDIを実装する一部のアプリケーションは、MS Officeなどの同じアプリケーションインスタンスの下で「ドキュメント」を切り替えるためにCtrl + Tabを提供します。ただし、これはWindowsの機能ではなく、アプリケーションに依存します。他のソフトウェアの場合例えば、Firefoxはこの機能を提供していませんが、機能を追加する add-on があります。
さらに、Windowsで提供される キーボードショートカットのリスト を以下に示します。
また、Windowsのキーボードショートカットについて 既存のディスカッション があります。
お役に立てば幸いです。
Easy Windows Switcher Neosmartが提供するのは、まさにあなたが求めていることです。
Easy Windows Switcher ウェブサイトからの説明です。
Easy Window Switcherにより、異なるウィンドウ間の切り替えが簡単に alt+` (これはalt + backtickです)Macのようなものです。
alt+tab
何百万もの異なる開いているウィンドウ間で、探しているウィンドウを見つけることができます。EasyWindow Switcherを使用すると、同じプログラムのウィンドウ間をタブで移動するだけです。 alt+` 離れて。
VistaSwitcherはこの機能を許可します。その名前はWindows 10と互換性があります(ただし、名前はそうではありません)。 Windows 8以降では、特定のMetroアプリを除外リストに追加することをお勧めします。
一番良い答えは良いですが、アクティブモニターにアイコンのみを表示するようにタスクバーが設定されているマルチモニター設定では機能しません。
AutoHotkeyスクリプトを作成して、通常のウィンドウアプリ、で動作する同じアプリケーションのウィンドウを切り替えるChromeショートカットおよびChrome Apps。
その中に Github repo 必要なホットキーを使用してアプリを開いたり、復元したり、最小化したりできるため、これと連携してうまく機能する別のAutoHotkeyスクリプトがあります。
例:
F7:: OpenOrShowAppBasedOnExeName("C:\Windows\System32\SnippingTool.exe")
F8:: OpenOrShowAppBasedOnWindowTitle("Gmail", "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --app=https://mail.google.com/mail/")
AutoHotkeyでも、より自然な動作:
; Switch between windows of the same application with Alt+(key above Tab)
; Icon: made by Freepik (www.freepik.com), licence CC 3.0 BY
; from https://www.flaticon.com/free-icon/switch-window_71630
; Script Licence: CC0 (Public Domain)
; Source: https://framagit.org/dr4Ke/AutoHotkey_scripts
KeyName := GetKeyName("sc029")
Menu, Tray, Tip, Switch between windows of the same applications with 'Alt+%KeyName%'
*!SC029::
WinGetClass, ActiveClass, A
WinGet, WinClassCount, Count, ahk_class %ActiveClass%
If WinClassCount = 1
Return
WinGet, List, List, % "ahk_class " ActiveClass
index := 0
if not GetKeyState("Shift") {
index := 1
}
;MsgBox, Entering Loop
While GetKeyState("Alt") {
If GetKeyState("Shift") {
index := Mod(List + index - 2, List) + 1
} else {
index := Mod(List + index, List) + 1
}
WinGet, State, MinMax, % "ahk_id " List%index%
if (State == -1)
{
continue
}
WinID := List%index%
WinActivate, % "ahk_id " WinID
ErrorLevel := 1
sleep 50
While (ErrorLevel != 0) and GetKeyState("Alt") {
KeyWait, sc029, DT1
}
}
return
スコット( https://superuser.com/users/150988/scott )が共有したものに加えて:
ctrl+repeatedly click タスクバーのアプリアイコンの上でも、仕事をします。
私はAutoHotkeyスクリプトを作成し、Windowsタスクスイッチャー(Alt+Tab)、そのすべての利点を提供します:アプリウィンドウのプレビュー、クリックして選択、矢印キーナビゲーション、必要な単一のウィンドウのみをアクティブ化します。呼び出し/ナビゲート Alt+` そして Alt+Shift+` (バックティック)現在のウィンドウと同じプロセス名を持つウィンドウ間を循環します。私はこれがより使いやすいと思います Win+num どのアプリでも機能するため(固定されたスロット番号を覚えておく必要はありません)、ウィンドウのプレビューが大きくなり、背景がぼやけず、シームレスにミックスされます Alt+Tab ナビゲーション。 Windows 10でテスト済み。
主なトリックは、WS_EX_TOOLWINDOW
を設定し、WS_EX_APPWINDOW
を設定解除することで、非対象のアプリケーションウィンドウをタスクスイッチャーから一時的に非表示にすることです。管理者として実行しているウィンドウでこれらのウィンドウスタイルを設定するには、AutoHotkeyに署名するか、adminとして実行する必要があります。私は非常に簡単な署名手順 ここ に従いました。
貢献したいくつかの関連スレッド:
!`::
{
WS_EX_TOOLWINDOW = 0x80
WS_EX_APPWINDOW = 0x40000
tw := []
aw := []
WinGet, processName, ProcessName, A
DetectHiddenWindows, Off
AltTab_window_list(1)
Loop, %AltTab_ID_List_0%
{
wid := AltTab_ID_List_%A_Index%
WinGet, processName2, ProcessName, ahk_id %wid%
if (processName2 != processName)
{
WinGet, exStyle2, ExStyle, ahk_id %wid%
if (!(exStyle2 & WS_EX_TOOLWINDOW))
{
tw.InsertAt(0, wid)
WinSet, ExStyle, ^0x80, ahk_id %wid%
}
if ((exStyle2 & WS_EX_APPWINDOW))
{
aw.InsertAt(0, wid)
WinSet, ExStyle, ^0x40000, ahk_id %wid%
}
}
}
Send {Alt Down}{Tab} ; Bring up switcher immediately
KeyWait, ``, T.25 ; Go to next window; wait .25s before looping
if (Errorlevel == 0)
{
While ( GetKeyState( "Alt","P" ) )
{
KeyWait, ``, D T.25
if (Errorlevel == 0)
{
if (GetKeyState( "Shift","P" ))
{
Send {Alt Down}{Shift Down}{Tab}
Sleep, 200
}
else
{
Send {Alt Down}{Tab}
Sleep, 200
}
}
}
}
Send {Alt Up} ; Close switcher on hotkey release
for index, wid in tw
{
WinSet, ExStyle, ^0x80, ahk_id %wid%
}
for index, wid in aw
{
WinSet, ExStyle, ^0x40000, ahk_id %wid%
}
}
return
AltTab_window_list(excludeToolWindows)
{
global
WS_EX_CONTROLPARENT =0x10000
WS_EX_APPWINDOW =0x40000
WS_EX_TOOLWINDOW =0x80
WS_DISABLED =0x8000000
WS_POPUP =0x80000000
AltTab_ID_List_ =0
WinGet, Window_List, List,,, Program Manager ; Gather a list of running programs
id_list =
Loop, %Window_List%
{
wid := Window_List%A_Index%
WinGetTitle, wid_Title, ahk_id %wid%
WinGet, Style, Style, ahk_id %wid%
If ((Style & WS_DISABLED) or ! (wid_Title)) ; skip unimportant windows
Continue
WinGet, es, ExStyle, ahk_id %wid%
Parent := Decimal_to_Hex( DllCall( "GetParent", "uint", wid ) )
WinGetClass, Win_Class, ahk_id %wid%
WinGet, Style_parent, Style, ahk_id %Parent%
If ((excludeToolWindows & (es & WS_EX_TOOLWINDOW))
or ((es & ws_ex_controlparent) and ! (Style & WS_POPUP) and !(Win_Class ="#32770") and ! (es & WS_EX_APPWINDOW)) ; pspad child window excluded
or ((Style & WS_POPUP) and (Parent) and ((Style_parent & WS_DISABLED) =0))) ; notepad find window excluded ; note - some windows result in blank value so must test for zero instead of using NOT operator!
continue
AltTab_ID_List_ ++
AltTab_ID_List_%AltTab_ID_List_% :=wid
}
AltTab_ID_List_0 := AltTab_ID_List_
}
Ctrl + Win + [Number] (Windows 10でテスト済み)
これは私が何とか考え出した組み込みソリューションです。
他の回答との違い:
いつ Win + [Number] なしで使用されます Ctrl、それは常に最初のウィンドウから始まります。これは私が本当にたいと思うものではありません。
サードパーティのソフトウェアは必要ありません。
マウスをクリックする必要はありません。
オートホットキーを使用して、これが私のバージョンです。ChromeとElectronアプリで動作します。 @ user332861 の回答から変更され、ChromeとSlackやVisual Studio CodeなどのElectronアプリを正しく区別できるようになりました。 (これを行うには、ahk_exe
ではなくahk_class
を使用します)
!`:: ; Next window if using alt-backtick
WinGet, ExeName, ProcessName , A
WinGet, ExeCount, Count, ahk_exe %ExeName%
If ExeCount = 1
Return
Else
WinSet, Bottom,, A
WinActivate, ahk_exe %ExeName%
return
!+`:: ; prev window, Alt+shift+backtick
WinGet, ExeName, ProcessName , A
WinActivateBottom, ahk_exe %ExeName%
return
!`::
#`::
WinGet, ExeName, ProcessName, A
WinActivateBottom, ahk_exe %ExeName%
return
@ otter.proの回答から簡略化。これは単に、現在のアプリケーションウィンドウを逆方向に循環します。順方向に循環すると、他のウィンドウが一瞬点滅することがあります。フラッシュを見ないことが双方向サイクリングよりもおそらく重要であるため、前方にサイクリングしないでください。さらに、この回答は# `を!`の代わりとして使用できるため、これはMacショートカットのキーの組み合わせです。