V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
kid813
V2EX  ›  macOS

Mac OS X 的窗口操作逻辑?

  •  
  •   kid813 · 2014-07-24 22:46:07 +08:00 · 7286 次点击
    这是一个创建于 3773 天前的主题,其中的信息可能已经有所发展或是发生改变。
    cmd+w关闭一个app的窗口(未退出),按cmd+tab仍然显示这个app的图标,但是无法切换到这个app的窗口,而此时的窗口focus已经不知道去哪儿了。

    举个栗子:打开Safari和Chrome,关闭Chrome的窗口(不是cmd+q退出),切换回Safari的窗口,按cmd+tab,选中Chrome的图标后松手,此时窗口的focus不在Safari(无法操作Safari),但Chrome的窗口也不会弹出来。

    cmd+h隐藏窗口可以避免这个问题。Apple的设计逻辑是怎么样的呢?
    28 条回复    2014-08-08 15:14:21 +08:00
    chshouyu
        1
    chshouyu  
       2014-07-24 22:52:28 +08:00
    退出直接cmd+q
    hydrowing
        2
    hydrowing  
       2014-07-24 22:54:40 +08:00   ❤️ 1
    试试关掉窗口后,cmd + tab 切到那个 app,不松开 cmd 按住 option,然后松开 cmd。
    但我也不知道为什么要这么设计。
    jsonline
        3
    jsonline  
       2014-07-24 22:55:15 +08:00
    看不到窗口就新建一个呗 CMD+N
    Mutoo
        4
    Mutoo  
       2014-07-24 22:56:35 +08:00
    cmd+n
    1ychee
        5
    1ychee  
       2014-07-24 23:22:48 +08:00
    被你一说,我发现 Mac 的窗口管理确实比较混乱啊。。。
    我一般都是直接 CMD+M 最小化的。
    ffffwh
        6
    ffffwh  
       2014-07-24 23:27:17 +08:00
    总之,和Windows(&各类Linux桌面环境)不太一样,具体嘛...你用用就知道了。
    kid813
        7
    kid813  
    OP
       2014-07-24 23:30:16 +08:00
    @hydrowing 谢谢,这些快捷键不是便捷,而是增加复杂度。
    kid813
        8
    kid813  
    OP
       2014-07-24 23:31:47 +08:00
    @1ychee 在Windows下按习惯了cr+w。按h或者m的键程都太远了。
    limon
        9
    limon  
       2014-07-25 00:09:37 +08:00   ❤️ 1
    想起以前吐槽 Mac 只能拖右下角 resize 还被人喷。
    1ychee
        10
    1ychee  
       2014-07-25 00:15:42 +08:00
    @kid813 嗯,不过没有办法啊。总比用鼠标点击方便吧?
    @limon 嗯,窗口控制最好用 MOOM。现在的原生的“适应窗口”也完全不知所云
    H4Dee
        11
    H4Dee  
       2014-07-25 00:39:40 +08:00   ❤️ 1
    Cmd+tab 切换到对应应用图标松手后你看工具栏左上角「」右边就已经显示为对应程序的名字了啊,这说明你已经在该程序下面了。你之前关的是程序最后一个「窗口」,如有需要再开新一个就是了。举个例子,比如说 Mac 支持将文件直接拖拽到 Dock 中程序图标上打开(相当于直接打开新窗口),关闭窗口并不是关闭程序的必要条件。
    nikolai
        12
    nikolai  
       2014-07-25 00:45:55 +08:00   ❤️ 1
    Cmd + Tab 确实非常不妥。不过我已经习惯了每个 desktop 只放一个窗口,然后每个 desktop 都有直达的快捷键。。。
    kid813
        13
    kid813  
    OP
       2014-07-25 01:20:36 +08:00
    @H4Dee 明白您的意思了,谢谢。
    yellowV2ex
        14
    yellowV2ex  
       2014-07-25 01:47:21 +08:00
    你可以把整个桌面理解成类似PS未打开文件时的窗口,按cmd+w只是关闭一个打开了的文件窗口,不会退出程序。
    等你需要用PS的时候,cmd+tab切换到PS,就可以直接打开或新建PS的文档。

    只是在Mac下,菜单跑到最顶,没有多余的窗口了而已,程序还是处于待命状态。
    13eet
        15
    13eet  
       2014-07-25 02:36:09 +08:00
    cmd+tab只是切换程序,不是切换窗口,所以你切换回到chrome也不会给你开新的窗口,这个时候你就要cmd+N了,cmd+N是非常常用的快捷键不用纠结。
    '不松开 cmd 按住 option,然后松开 cmd'这个神奇的切换焦点的方式我居然头一次听说,不过这个样也不失为一个办法。

    总之,OS X的窗口管理虽然不是最吊的,但是比windows的逻辑还是 条理的多了。
    Axurez
        16
    Axurez  
       2014-07-25 02:45:14 +08:00
    逻辑就是窗口是隶属于程序的,而不是 Windows 下面窗口就是最高级。没有窗口不代表程序退出。
    可以通过三指上滑和下滑来体会。
    这样的好处是,比如 Chrome 下载,不必非留着一个窗口等。
    但有一些程序是关闭了窗口就退出了。通常是只能打开一个窗口的程序,比如备忘录。
    yimity
        17
    yimity  
       2014-07-25 06:55:22 +08:00
    @13eet 不敢苟同,各有各的好吧。
    yimity
        18
    yimity  
       2014-07-25 06:55:42 +08:00
    最后一句观点。
    allan1st
        19
    allan1st  
       2014-07-25 07:00:21 +08:00
    @13eet cmd+n 不是万能的,比方说 iTunes 就是不行的。
    yyfearth
        20
    yyfearth  
       2014-07-25 08:53:28 +08:00   ❤️ 1
    @yimity OSX 下 cmd+tab 切换app cmd+` 切换窗口
    对于高级用户来说一般来说是优势 更加灵活 控制更加到位
    因为一个app可能有0-多个窗口
    用windows的ctrl+tab 如果每个app只有很少几个窗口的情况下很方便
    但是 如果有app没有窗口 或者 有很多窗口 就不方便了
    OSX的设计 两者分开 没有窗口的你可以再开新窗口 窗口多的不影响 cmd+tab
    不过问题在于切换窗口 cmd+` 不够直观

    对于初级用户 OSX有 exposure 非常友好 可以通过触摸板手势直接呼出

    我个人比较喜欢Windows7/8的任务栏 鼠标上去可以看到所有窗口的预览
    快捷键的话还是喜欢OSX这样分开的设计
    sdvegeta
        21
    sdvegeta  
       2014-07-25 11:22:31 +08:00
    @yyfearth 主要是cmd+~需要开发者支持,又不是强制标准,很多app都不支持cmd+~来切换同一个app的不同窗口。比如chrome、firefox就不支持,窗口菜单下就没有循环显示窗口这项。 所以这个快捷键有的app支持,有的不不支持,那就等于没用。
    yyfearth
        22
    yyfearth  
       2014-07-26 02:48:53 +08:00
    @sdvegeta chrome firefox 都是支持的好么 注意 窗口 不是 tab
    File下面有 新窗口 和 新tab cmd+`是可以切换窗口的 我相信这个是系统的支持 不是app自己去做的
    只要app开了多个窗口 就应该可以使用
    codeplay
        23
    codeplay  
       2014-07-26 06:58:54 +08:00   ❤️ 2
    先给解决方案:楼主装一个HyperSwitch就可以解决上述不便和烦恼:在HyperSwtich的设置界面里勾选When activating an app without windows,try to open default window.

    挨个点评回复哈
    @kid813
    程序和窗口是分离的,一个程序可以有多个窗口,所有窗口关闭,程序也还没有退出。一般来说是这样,但也有例外,Apple自家的iPhoto就是关闭主窗口就退出程序了。
    这种设计虽然严谨,但是未必实用,好在可以装软件优化改造可以参考我的相关帖子《键盘党在 OSX 优雅的切换程序(窗口)》

    @hydrowing
    这个操作只对最小化的有用,关闭了的窗口就是被关闭了,回不来的。

    @1ychee
    楼主明显是还没有意识到窗口和程序分离的逻辑。


    @yellowV2ex
    逻辑上最严谨,但是不装软件的优化的话,实用性很捉急(对键盘党不友好)


    @nikolai
    您都被逼成啥样了……赶快看我的帖子《键盘党在 OSX 优雅的切换程序(窗口)》
    1ychee
        24
    1ychee  
       2014-07-26 09:38:02 +08:00
    @codeplay 总结的很好。我去看看你的文章!非常感谢!
    hydrowing
        25
    hydrowing  
       2014-07-26 11:45:23 +08:00
    @codeplay 可以的呀,我天天都在这么用完全没问题,可能有部分应用不支持吧。
    个人猜测这快捷键和鼠标单击 dock 图标是等价的。
    sdvegeta
        26
    sdvegeta  
       2014-08-08 14:48:39 +08:00
    @yyfearth 我真没找到啊,窗口和tab我还是分得清的。在看到你的帖子后,我又特意再找一遍,再尝试一遍,还是不行,需要什么设置吗?这个很苦恼啊
    yyfearth
        27
    yyfearth  
       2014-08-08 14:55:00 +08:00
    @sdvegeta 不用找啊 开了多个窗口后 直接cmd+· 就是切换啊
    难道你是要找这个菜单项么?
    sdvegeta
        28
    sdvegeta  
       2014-08-08 15:14:21 +08:00
    @yyfearth 嗯,现在搞掂了,因为之前只有finder可以这样切换窗口,以为是一定要窗口这个菜单下要有循环显示窗口才行,刚才又研究了一下,拿了同事的机器来对比,发现是 系统偏好设置——键盘——快捷键——键盘——将焦点移到新窗口 这个没勾上 …… 汗死,可能是装那个app的被改了,照道理自己应该是不会去改这个设置的……
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1023 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 19:35 · PVG 03:35 · LAX 11:35 · JFK 14:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.