特定のアプリケーションでのみウィンドウを切り替えるショートカットがWindows 7にありますか?OS Xのこの機能はとても気に入っています。Windowsで同等のものは何ですか?
特定のアプリケーションでのみウィンドウを切り替えるショートカットがWindows 7にありますか?OS Xのこの機能はとても気に入っています。Windowsで同等のものは何ですか?
回答:
タスクバーの最初の10個のアプリケーションのいずれかである場合、 (Win)+ n(nはその位置番号)はそれを選択し、ウィンドウを循環します。(使用0(ゼロ)第十アプリケーション用)。たとえば、私が使用できるように、WindowsエクスプローラとInternet Explorerが、私のタスクバー上の最初の二つのもののように固定してい+ 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。)
alt-tab terminator
、同じアプリケーション間でタブ移動する機能をもう持っていません
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のようにコピー/貼り付け/取り消しなどのキーも作成しました。よく働く!
時代
WinGet, List
内のウィンドウの数を返しList
ます(List%n%
ハンドルが格納されている擬似配列とは異なります)。そのため、WinGet, WinClassCount
呼び出しをスキップしてList
代わりに確認できます。また、コードは両方のホットキーで同一のようです。
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を実装する一部のアプリケーションは、Ctrl + Tabを提供して、同じアプリケーションインスタンスで「ドキュメント」を切り替えます。たとえば、MS Office。ただし、これはWindowsの機能ではなく、アプリケーションに依存しています。他のソフトウェアには、さまざまなショートカットがあります。たとえば、Firefoxはこの機能を提供していませんが、機能を追加するアドオンがあります。
さらに、Windowsで提供されるキーボードショートカットのリストを以下に示します。
また、Windowsのキーボードショートカットに関する既存の議論もあります。
お役に立てば幸いです。
NeosmartのEasy Windows Switcherは、まさにあなたが望んでいることをします。
Easy Windows Switcher Webサイトの説明を次に示します。
Easy Window Switcherを使用するalt+`と、Macと同じように(Alt +バックティック)さまざまなウィンドウを簡単に切り替えることができます。
alt+tab
Easy Window Switcher を使用すると、100万から 1種類のウィンドウを開いて探しているウィンドウを見つける必要がalt+`なくなります。同じプログラムのウィンドウ間を移動するだけで済みます。
VistaSwitcherは、この機能を許可しています。Windows 10と互換性があります(ただし、名前はそうではないことを示唆しています)。Windows 8以降では、特定のメトロアプリを除外リストに追加することをお勧めします。
一番上の答えは良いですが、アクティブモニターにアイコンのみを表示するようにタスクバーが設定されているマルチモニターセットアップでは機能しません。
スコット(https://superuser.com/users/150988/scott)が共有したものに加えて:
ctrl+ repeatedly click タスクバーのアプリアイコンの上でも、ジョブを実行します。
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
AutoHotkeyスクリプトを作成して、通常のWindow Apps、Chrome Shortcuts、Chrome Appsで動作する同じアプリケーションのウィンドウを切り替えます。
そのGithubリポジトリには、必要なホットキーを使用してアプリを開く、復元する、または最小化することができるため、このスクリプトと連携して動作する別の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/")
Windowsタスクスイッチャー(+ )とうまく統合するAutoHotkeyスクリプトを作成し、そのすべての利点を提供します:アプリウィンドウのプレビュー、クリックして選択、矢印キーナビゲーション、必要な単一ウィンドウのみをアクティブにします。+ および+ + (バックティック)で呼び出し/ナビゲートして、現在のウィンドウと同じプロセス名を持つウィンドウ間を循環します。(ピン留めされたスロット番号を覚える必要はなく)どのアプリでも機能するため、これは+ よりも使いやすく、ウィンドウプレビューは大きく、背景はぼやけず、+とシームレスに混ざります。AltTabAlt`AltShift`WinnumAltTabナビゲーション。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_
}
Autohotkeyを使用して、ChromeおよびElectronアプリで動作する私のバージョンを紹介します。@ user332861の回答から変更され、SlackやVisual Studio CodeなどのChromeアプリと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