带有加号和减号按钮的NSTableView

时间:2012-05-22 16:43:28

标签: cocoa interface-builder

我该怎么办?

Screenshot

我在Interface Builder库中找不到任何合适的对象。

有什么想法吗?

4 个答案:

答案 0 :(得分:34)

我找到的最好的方法是使用NSSegmentedControl。

在画布上拖动它后,您应该配置它的样式:

Style: Small Square
Mode:  Select Momentary

看起来更好。现在使用“image”字段设置 NSAddTemplate NSRemoveTemplate 。确保标签字段为空。

好的,我们有“ + ”,“ - ”和一个空片段。要阻止用户选择最新的一个,请从细分:弹出并关闭已启用复选框(位于状态旁边:标签)。

最后,我们要做的是设置前两个段的宽度,使它们成为正方形。

  1. 转到尺寸检查器
  2. 选择细分0
  3. 关闭“已修复”复选框(细分应立即自动调整以适合图片)
  4. 选择细分1 并重复3号
  5. 现在,当你调整控件大小时,只有最后一段会改变宽度
  6. 将它放在表格视图的底部并调整大小。
  7. 享受;)

答案 1 :(得分:8)

使用具有渐变样式的NSButton,对于图像,使用系统提供的NSAddTemplate和NSRemoveTemplate。

答案 2 :(得分:8)

OSX优胜美地的更新

我尝试在“帐户”视图(截图中的右侧窗口)中实现与Mail.app相同的外观。

我按照以下步骤确实达到了预期效果:

  1. 添加NSSegmentedControl
  2. 添加两个细分并将图像设置为每个细分:
    • NSAddTemplate代表+按钮
    • NSRemoveTemplate代表-按钮
  3. 将细分的大小设置为fixed,并将值设置为32像素
  4. 按钮旁边的矩形为NSButton,样式为Gradient
  5. 按钮已启用,但拒绝第一响应者设置为true,因此无法点击。
  6. Screenshot

答案 3 :(得分:3)

这里的一个答案建议使用渐变按钮,但是这些按钮无法禁用,因为这会导致背景改变,从而打破外观。另一个建议使用分段控件,这几乎是完美的但分段控件不支持自动调整,例如,如果表格宽度是动态的。我的建议是两者的结合。对实际按钮使用分段控件,使用渐变按钮填充表格宽度的其余部分,如果按钮宽度也是动态的,现在也可以是动态的。

查看我对类似问题的回答(截图): https://stackoverflow.com/a/22586314/15809

相关问题