求一个 windows 虚拟桌面切换的方案 - V2EX
lnbiuc

求一个 windows 虚拟桌面切换的方案

  •  
  •   lnbiuc Sep 19, 2025 2069 views
    This topic created in 236 days ago, the information mentioned may be changed or developed.

    好蠢的设计啊
    win + tab 只能进任务视图,然后鼠标再点击需要的桌面(设置里不给修改)
    win + ctrl + 左右键 单个方向循环多个桌面

    想改成
    win + shift + tab 进入任务视图
    win + tab 在多个桌面循环切换

    mac 上的多个桌面太好用了

    12 replies    2025-11-17 16:22:36 +08:00
    sparkssssssss
        1
    sparkssssssss  
       Sep 19, 2025
    有个工具集里面包含一个小工具,可以设置是个虚拟屏幕,类似 linux 的那种,通过快捷键可以来回切换
    SysinalsSuite/Desktops64.exe

    minami
        2
    minami  
       Sep 19, 2025
    虽然品味这东西是主观的,但是 windows 是自由的,你直接 AHK 启动就完了
    https://github.com/mogya/win-11-virtual-desktop-enhancer
    geelaw
        3
    geelaw  
       Sep 19, 2025 via iPhone
    @coolloves #1 Sysinternals 里面的 desktops64 和 Windows 10 引入的虚拟桌面完全不同,前者用的是 Win32 Desktop 对象,是“真实”桌面,后者不过是 dwm 选择显示或者不显示一些窗口罢了。

    Win32 Desktop 对象在日常中接触最多的是“安全桌面”,比如按下 Ctrl+Alt+Del 后看到的界面(这个界面叫做“Windows 安全”对话框),以及登录注销时的界面,以及 UAC 在最高级别时的提权对话框所在的界面,这些界面和日常使用应用程序的 Desktop 对象是隔离的。我最近在 Windows 11 上使用 desktops64 建立更多 Desktop 对象时发现现在的 explorer 和 UWP 都不支持多 Desktop 对象了(具体表现是额外的 Desktop 里壁纸不显示,并且打开“开始”菜单和 UWP 时要么失败,要么被切回第一个 Desktop 对象)。
    geelaw
        4
    geelaw  
       Sep 19, 2025
    回到楼主的问题,看了一下 @minami #2 似乎有现成的软件,但如果要自己动手的话,解决方案分两步。

    1. 用组合键映射软件把 Windows+Shift+Tab 映射为 Windows+Tab
    2. 用组合键映射软件把 Windows+Tab 映射为一个几乎不可能用到的组合键 X
    3. 对组合键 X 作出反应

    这里难点在于如何循环切换虚拟桌面,Windows 没有自带这个功能。思路是利用 IVirtualDesktopManager 接口,它允许做三件事:

    - 获取已知窗口所在的虚拟桌面 ID
    - 检查已知窗口是否在当前虚拟桌面
    - 把已知窗口挪动到已知 ID 的虚拟桌面上

    于是要实现循环切换虚拟桌面,可以这样:

    1. 建立一个牺牲的窗口 A 并显示,这会导致这个窗口位于当前虚拟桌面上
    2. 获取 A 所在的虚拟桌面 ID ,这当然就是当前的
    3. 发送 Ctrl+Windows+Right
    4. 检查 A 是否在当前的虚拟桌面上,如果不在,说明步骤 3 成功右移了一个桌面,删去 A 并结束
    5. 如果 A 在当前的虚拟桌面上,说明一开始位于最后一个虚拟桌面,因此需要反复发送 Ctrl+Windows+Left

    如何判断 Ctrl+Windows+Left 已经发送了足够多次?方法同上面判断是否“按尽了 Ctrl+Windows+Right”,反复建立和删除牺牲的窗口。

    上面的方法仅使用 Windows 文档中允许的方法,因此理论上在未来的 Windows 上都是有效的。
    LeonL1
        5
    LeonL1  
       Sep 19, 2025
    win 笔记本配合触摸屏还是挺方便的,四指上划显示任务及桌面视图,四指左右划切换桌面
    lnbiuc
        6
    lnbiuc  
    OP
       Sep 19, 2025
    @geelaw #4 这个设计就很难受,不循环切换的话,脑子里就需要记住桌面的位置,不然每次都是左右乱按,大概率误操作
    whitefable
        7
    whitefable  
       Sep 19, 2025
    曾经我也有楼主的问题,甚至还有我想将一个软件快速扔到另一个桌面的行为但没法设置。最终我选择了使用第三方软件,楼主可以尝试一下 Dexpot 看看符不符合你的需求,里面设置项挺多的也可以自定义快捷键等等
    BlitheChiang
        8
    BlitheChiang  
       Sep 19, 2025
    https://github.com/hwtnb/SylphyHornPlusWin11

    这个工具蛮好用的,可以很方便操作虚拟桌面
    Tyrant1984
        9
    Tyrant1984  
       Sep 19, 2025
    t/1074431
    站内有大佬做了这个工具,可以看一下,我用着感觉还挺好
    heyline
        10
    heyline  
       Sep 19, 2025
    有没有可能,有一种东西叫做鼠标手势,右键按住一划就切换了
    GuGa
        11
    GuGa  
       Nov 17, 2025
    在 Windows store 里直接搜:desktop switcher ,用鼠标滚轮就能切换,非常丝滑,你值得拥有。
    lnbiuc
        12
    lnbiuc  
    OP
       Nov 17, 2025
    @GuGa 已经用上 arch linux 了,太丝滑了
    About     Help     Advertise     Blog     API     FAQ     Solana     1069 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 55ms UTC 22:53 PVG 06:53 LAX 15:53 JFK 18:53
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86