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

Jay*_*Jay 5 cocoa objective-c

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

什么是最强大的方法?

理想情况下,你希望有类似的东西

NSXcodeHeaderBar *hrdBar = [[NSXcodeHeaderBar alloc] init];
[hrdBar setBackgroundStyle: [NSBackgroundStyle NSRoundRectBackgroundStyle]];
[hrdBar drawWithFrame: popUpRect inView: controlView];
[hrdBar release];
Run Code Online (Sandbox Code Playgroud)

从一致的风格中受益..是否有一个控制,我们可以滥用绘图部分?

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

任何想法赞赏!

干杯,杰伊

Nat*_*Day 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];
Run Code Online (Sandbox Code Playgroud)

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