InAppStoreWindow,调整大小时如何在NSWindow的标题栏中重新定位NSView?

时间:2013-05-16 22:17:37

标签: cocoa nswindow inappstorewindow

我正在使用InAppStorewindow(https://github.com/indragiek/INAppStoreWindow)来确定我的NSWindows的标题栏。我要做的是在我的标题栏中添加一个徽标(图像):

NSSize logoSize = self.logo.frame.size;
NSRect logoFrame = NSMakeRect(NSMidX(self.window.titleBarView.bounds) - (logoSize.width / 2.f),
                                 NSMidY(self.window.titleBarView.bounds) - (logoSize.height / 2.f),
                                 logoSize.width, logoSize.height);

self.logo.frame = logoFrame;

我将上面的代码放在applicationDidFinishedLaunching方法中。

它工作正常,但如果我点击绿色调整大小按钮,位置将不会改变。那么当点击调整大小按钮并调用performZoom:时,如何调用上面的代码来重新定位我的徽标呢?

1 个答案:

答案 0 :(得分:0)

您可以使用NSWindowDelegate方法

- (void)windowDidResize:(NSNotification *)notification

通过这种方式,您将知道何时调整窗口大小,以便重新计算徽标的位置。