1

我正在创建一个自定义 NSSlider,我想在每个刻度线下方绘制标签。我目前正在自定义中执行此操作,NSSliderCell -(NSRect)rectOfTickMarkAtIndex但是因为 的高度NSSlider是固定的,所以我在下面绘制的标签正在被裁剪。

有人有想法么?此外,任何具有自定义 NSSlider 完整实现的资源都将不胜感激。

4

1 回答 1

3

NSSlider只需设置(实际上是 的子类)的框架和边界,NSView使其更高。那么你的绘图应该可以正常工作。将此代码粘贴在awakeFromNib:(如果您在其子类中,请替换为。sliderself

NSRect frameRect = [slider frame];
frameRect.size.height = 30;
[slider setFrame:frameRect];
NSRect boundsRect = [slider bounds];
boundsRect.size.height = 30;
[slider setBounds:boundsRect];
于 2011-07-26T22:10:42.817 回答