V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
cocong
V2EX  ›  程序员

请问 Windows 多桌面怎么设置快捷键切换到指定的桌面?

  •  
  •   cocong ·
    hzh-cocong · 2022-08-03 11:25:58 +08:00 · 2174 次点击
    这是一个创建于 877 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在 Mac 中,我们是可以自定义每一个桌面的快捷键,Windows 貌似能一个一个切换,比如从第一个桌面切换到第四个桌面就得滚动 3 次,太麻烦了。

    10 条回复    2022-08-04 11:37:22 +08:00
    yayiji
        1
    yayiji  
       2022-08-03 13:22:16 +08:00 via Android   ❤️ 1
    我目前只知道这个方法可以做到
    https://www.computerhope.com/tips/tip224.htm
    lazyfighter
        2
    lazyfighter  
       2022-08-03 14:10:04 +08:00
    mac 上面怎么切换呀
    tairan2006
        3
    tairan2006  
       2022-08-03 16:06:00 +08:00
    @lazyfighter 四指上推
    lazyfighter
        4
    lazyfighter  
       2022-08-03 17:05:08 +08:00
    @tairan2006 哦哦 我一直在用 但是不知道这是个桌面的概念
    lujiaosama
        5
    lujiaosama  
       2022-08-03 17:08:23 +08:00
    我用了两种方法, 一个是 autohotkey 隐射组合键, 一个是鼠标侧键绑定宏呼出虚拟桌面
    cowcomic
        6
    cowcomic  
       2022-08-03 18:18:21 +08:00
    windows 可以用 win+tab 来呼出类似 mac 四指上推的效果
    yazoox
        7
    yazoox  
       2022-08-03 22:15:23 +08:00 via Android
    mac 下最爽的难道不是 ctrl + 左右键切换么?
    yh648559276
        8
    yh648559276  
       2022-08-03 23:51:39 +08:00 via Android   ❤️ 1
    ctrl + win + →
    ctrl + win + ←
    FYFX
        9
    FYFX  
       2022-08-04 01:16:13 +08:00
    其实你可以把常用的应用放到底部任务栏,然后用 win+数字键切换,切换应用的同时也会切换到对应的桌面,不过我不知道怎么在 windows 下面设置应用默认打开到虚拟桌面的规则,不过窗口管理方面我感觉用的最爽的还是 linux 下面的 dwm
    sona
        10
    sona  
       2022-08-04 11:37:22 +08:00   ❤️ 1
    我纠结过这个问题,当时搞出来了一键切换,但是后来放弃了,因为没啥用:我并不能立刻知道我想要去的桌面到底是第几个。
    ahk 代码如下, 按 ctrl+win+数字 到指定桌面

    ^#1::
    ^#2::
    ^#3::
    ^#4::
    ^#5::
    ^#6::
    ^#7::
    ^#8::
    ^#9::
    desk:=a_getdeskindexandtotal()
    pos:=trim(a_thishotkey, "^#") - desk[1]
    send % "{lctrl down}{lwin down}{" ( pos < 0 ? "left" : "right" ) " " abs(pos) "}{lctrl up}{lwin up}"
    return

    A_GetDeskIndexAndTotal() {
    sessionIx:=0
    loop {
    sessionIx+=1
    RegRead, cur, HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SessionInfo\%sessionIx%\VirtualDesktops, CurrentVirtualDesktop
    if (!errorlevel) {
    break
    }
    }

    RegRead, all, HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VirtualDesktops, VirtualDesktopIDs

    ix := floor(InStr(all,cur) / strlen(cur))
    ix+=1

    total := floor(strlen(all) / strlen(cur))

    return [ix, total]
    }
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2661 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 01:55 · PVG 09:55 · LAX 17:55 · JFK 20:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.