如何更改NSSegmentedControl的高度

时间:2014-08-13 15:15:22

标签: cocoa nscell nssegmentedcontrol

我试图增加NSSegmentedControl的高度,超过25px" Regular"控制尺寸。我将NSSegmentedCell子类化,我知道我有两种方法可以使用。

- (void)drawSegment:(NSInteger)segment
            inFrame:(NSRect)frame
           withView:(NSView *)controlView

- (void)drawWithFrame:(NSRect)frame
               inView:(NSView *)view

如果我在IB中放置一个分段控件,则覆盖我的NSSegmentedCell子类中的上述方法。除外,传入的帧和视图基于IB中分段控件的高度。所以,我不知道从哪里开始。

我是否必须继承NSSegmentedControl并在我所需的高度绘制自己的控件?然后使用NSSegmentedCell子类来处理段?

1 个答案:

答案 0 :(得分:1)

默认NSSegmentedControl不允许您调整其绘制高度。要做到这一点,你必须将它子类化(和NSSegmentedCell)并用你自己的方式覆盖它的绘图函数。