【发布时间】:2011-10-28 12:05:10
【问题描述】:
我在屏幕上定位窗口时遇到了一个奇怪的问题。我想在屏幕上居中窗口,但我不知道该怎么做。这就是我所拥有的。窗口由主控制器从 nib 创建:
IdentFormController *ftf = [[IdentFormController alloc] initWithWindowNibName:@"IdentForm"];
[[ftf window] makeKeyAndOrderFront:self];
现在 IdentFormController 有 awakeFromNib() 方法,它会尝试定位窗口。为了简单起见,我只是尝试做 setFrameOrigin(NSMakePoint(0, 0))。发生的情况如下:
我第一次创建这个窗口时,一切都按预期工作。但是如果我在释放前一个之后再次创建它,它就会开始出现在随机位置。为什么会这样?
【问题讨论】:
-
ftf 是一个可怕的变量名称,以后可能会成为维护问题。
标签: objective-c cocoa nswindow