如何在NSButton上垂直居中图像

Aya*_*yal 4 macos cocoa objective-c nstoolbar nsbutton

我正在构建一个Lion Mail.app风格的Mac应用程序.作为其中的一部分,我正在尝试为Mail.app中的那个创建一个类似的工具栏,但我似乎无法将工具栏按钮中的图像垂直居中.

看看Mail.app工具栏,我看到了一系列带有居中图标的漂亮按钮:

在此输入图像描述

但是当我去界面构建器时,我似乎无法重新创建相同的按钮.我得到的是:

在此输入图像描述

在Interface Builder中我尝试做的是:

  1. 创建一个新窗口
  2. 将NSToolbar添加到该窗口
  3. 使用样式 - "推",图像 - '信封',位置 - 'NSImageOnly',缩放 - '按比例缩小'将NSButton添加到工具栏

正如您所看到的那样,图标显然没有像Mail.app工具栏中那样垂直居中.

任何人有任何想法???

目前我正在使用XCode 4.2并使用Interface Builder布置此按钮.我正在尝试通过仅将图像添加到按钮而不是为每个项目绘制按钮来构建工具栏按钮,即绘制边框和图标.

任何帮助将不胜感激,因为这已经让我有点疯狂.

提前致谢 - AYAL

Aya*_*yal 10

事实证明,这个问题的答案比我预期的要简单得多.经过大量的牙齿咬牙切齿,头发拉动,以及摆弄像素,我遇到了解决方案.

我不必使用"推送"按钮,而只需切换到"圆形纹理"按钮.一旦我这样做,我添加到按钮的任何图像都很好地居中.接下来,我只需手动缩放图像即可.

然后,Mail.app工具栏的配方如下:

  1. 在工具栏中添加一个按钮
  2. 将按钮样式设置为"圆角纹理"
  3. 设置按钮的图像
  4. 将位置设置为'NSImageOnly'
  5. 将按钮大小设置为40 x 25以及ToolbarItem的最小和最大大小

结果是一个工具栏,可以看起来非常类似于Mail.app工具栏.

谢谢大家 - AYAL