我在屏幕上定位一个窗口时遇到了一个奇怪的问题。我想在屏幕上居中窗口,但我不知道该怎么做。这就是我所拥有的。窗口由主控制器从 nib 创建:
IdentFormController *ftf = [[IdentFormController alloc] initWithWindowNibName:@"IdentForm"];
[[ftf window] makeKeyAndOrderFront:self];
现在 IdentFormController 有 awakeFromNib() 方法,它试图定位窗口。为了简单起见,我只是尝试做 setFrameOrigin(NSMakePoint(0, 0))。发生的情况如下:
我第一次创建这个窗口时,一切都按预期工作。但是如果我在释放前一个之后再次创建它,它就会开始出现在随机位置。为什么这样做?