6

请给我一个建议,如何在我的屏幕截图中实现这种披露按钮 - 一个披露“向下箭头”按钮在点击时显示一个菜单:

我想要什么

我尝试了两种方法,使用NSPopupButtonNSButton显示样式和手动菜单显示:

  • NSPopupButton一直显示默认值文本,并且无法在 Interface Builder 中将大小调整为较窄的大小。

    NSPopupButton

  • NSButton显示一个菜单,但它显然错位到我单击按钮的位置,而不是底部边缘。我正在使用以下代码:

    - (IBAction)handleShowMenu:(id)sender
    {
        [NSMenu popUpContextMenu:profileMenu
                       withEvent:[NSApp currentEvent]
                         forView:sender];
    }
    

    带有菜单的 NSButton

那么显示这样一个菜单的正确方法是什么?

4

2 回答 2

4

我已经成功了!正确的设置是使用NSPopupButtonNo Arrow ”和“ Disclosure ”边框样式,“ Momentary Push In ”类型。

于 2011-12-21T12:56:48.830 回答
1

将弹出按钮的边框样式更改为“纹理”,将箭头更改为“中心”,将为您提供第一个屏幕截图的外观。如果您不希望出现所选项目的标题,您还需要将“位置”设置为“仅图像”(白色方块)。

编辑:我在 IB 3 中试过这个,只模拟了界面。似乎“纹理”样式在 Xcode 4 中看起来不同。“圆形纹理”很接近,但它不会水平居中三角形。

于 2011-12-21T12:38:54.140 回答