2009-10-06 118 views
1

有一些应用程序的窗口标题栏大于“Interface Builder”。例如“Things”应用程序。那我该怎么做呢?如何更改可可中窗口标题栏的高度?

+0

可能重复[如何更改NSWindow标题栏的高度?](http://stackoverflow.com/questions/4639207/how-to-change-the-height-of-an-nswindow-titlebar) – 2012-02-28 03:33:22

回答

2

following method of NSWindow可以修改窗口的内容边框的大小:的

- (void)setContentBorderThickness:(CGFloat)thickness forEdge:(NSRectEdge)edge 
+0

这似乎是不正确的。从此方法的NSWindow参考中,“在调用setContentBorderThickness:forEdge:passing NSMaxYEdge的非纹理窗口中,将引发异常,只有在纹理窗口中设置顶部边缘的内容边框厚度才有效。” – febeling 2011-07-01 14:51:00

+0

这是怎么回事?是的,窗户必须有纹理。 – 2011-07-04 09:09:12

+0

对不起,你是对的。没错。只给出的例子是一个没有纹理的应用程序窗口。通过我的东西副本似乎也有标准的标题栏高度。我假设这个问题指的是像Mac或GitHub这样的(非纹理化)用户界面,但文字并没有这样说。 – febeling 2011-07-04 12:10:41

1

Interface Builder和Things的主窗口具有相同大小的标题栏。界面生成器确实提供了一个工具栏,它在展开时可以使其看起来比东西更大。

Interface Builder也有一些NSPanels(我猜这就是你所说的)。 NSPanel将有一个小型标题栏,如IB图书馆/检查员所示。当应用程序不是活动的应用程序时,这些窗口将隐藏。但是,非NSPanel NSWindows将在Things中显示标题栏。

如果你想正常的标题栏,使用NSWindows,不NSPanels,还要注意他们的expected usage