2011-01-20 48 views
1

我有一个NSView子类的大小适合一个正常的NSWindow窗口(右边缘)。NSWindow调整控件覆盖NSView

该视图绘制背景颜色,当应用程序运行时,它会覆盖右下角的标准窗口大小调整控件。您仍然可以拖动角落来调整窗口大小。

如果我调整我的视图的大小,因此它不能完全进入窗口的边缘,很明显,调整大小控件正在绘制,但被我的视图重叠。

任何人都知道一种方法来解决这个问题?我必须自己绘制调整大小的控件吗?

这里是一个screenshot显示我的意思。

+0

我已经尝试添加一个NSImageView与我的主视图上方的调整大小手柄,但它仍然无法正常工作。我的主要观点是(并且必须)支持图层,所以最终可能会出于某种原因合成所有其他视图。 – Zac 2011-01-21 03:03:39

回答

0

您必须自己绘制手柄或敲出背景的右下角。鉴于您的视野与窗户边缘齐平,我只需亲自绘制并完成它。

唯一的麻烦是我相信如果你这样做的话,你必须处理拖动调整自己的大小(不要引用我,虽然)。如果是这样,您必须为该角创建一个NSTrackingArea,并在窗口框架更改(大小和原点)时处理该区域的拖动。

0

所以我通过创建一个图层的句柄,并将其定位在视图图层的右下角来实现它。我不必实施拖累我自己 - 它只是起作用。

0

使用支持层与托管层。根据我的经验,托管图层通常用于真正自定义的东西并应用于无边框窗口。