【问题标题】:How to change the NSSplitView divider thickness to 1px?如何将 NSSplitView 分隔线厚度更改为 1px?
【发布时间】:2012-10-10 12:34:54
【问题描述】:

我想让NSSplitView 的分隔线非常细,只有 1 像素宽,就像 Mail.app、Xcode.app 和许多其他 Mac 应用程序一样。

有什么好的方法可以做到这一点?

我已经尝试在 Interface Builder 中设置分隔线样式以及子类化 NSSplitView 以覆盖 -dividerThickness,但我得到的最接近的是 2px,这破坏了分隔线功能(我无法再移动分隔线)。

编辑:我知道RBSplitViewBWSplitView 等替代方案,但如果可能的话,我想使用NSSplitView。基本上,苹果是怎么做到的?

【问题讨论】:

    标签: objective-c macos cocoa nssplitview


    【解决方案1】:

    您不需要继承 NSSplitView 或进行任何编码。 您只需在 Xcode/Interface Builder 中(在 Attributes Inspector 中)将 Style 设置为“Thin Divider”。

    您可能会感到困惑的是,您可能在拆分视图中有子视图(很可能是表格视图)。这些子视图也有一个边框,当它们填满整个拆分视图时,拆分视图分隔线看起来好像是 2-3 像素宽。

    因此,您需要做的是将所有(填充)子视图的焦点环设置为“无”,然后禁用它们的边框或将它们稍微移出拆分视图的框架 1 像素,这样边框就不可见了。

    【讨论】:

    • 谢谢!你说得对,我对子视图的边界感到困惑。
    猜你喜欢
    • 2012-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多