模拟Xcode 4风格“标题栏”控件的最佳方法是什么?

时间:2011-12-09 07:23:34

标签: objective-c cocoa

再次模仿Apple的标准控件!  我们想在我们的窗口中添加一个类似于Xcode中的标题栏,即类似于旧版外观库中位于工具栏和窗口内容之间的旧式Placard。

任何建议最强大的方法是什么?

理想情况下,您希望获得类似

的内容
NSXcodeHeaderBar *hrdBar = [[NSXcodeHeaderBar alloc] init];
[hrdBar setBackgroundStyle: [NSBackgroundStyle NSRoundRectBackgroundStyle]];
[hrdBar drawWithFrame: popUpRect inView: controlView];
[hrdBar release];

从一致的样式中受益..是否有一个控件可以很好地契合我们可能会滥用绘图部分?

或者,我们是否需要对颜色进行采样并执行我们自己的NSGradient操作? 可能每个主要操作系统版本都有一个开关,以跟上Apple的风格?

任何想法都赞赏!

干杯, 杰

1 个答案:

答案 0 :(得分:0)

我自己这样做是为了复制导航侧面板上方的部分。我只是使用抓取来复制1像素宽的渐变图像,然后使用

NSRect      theFromRect = NSMakeRect(0.0, 0.0, 0.0, 0.0);
theFromRect.size = theImage.size;
[theImage drawInRect:theFrame fromRect:theFromRect operation:NSCompositeCopy fraction:1.0];

我做了类似的事情来复制按钮。