Cocoa学习

我的Cocoa/Cocoa Touch学习笔记

记忆窗口位置

在程序中记忆窗口的位置,以便在下次打开的时候恢复记忆的位置。这对很多程序来说还是比较有必要的。方法很简单:

1
2
3
4
5
6
7
8
9
10
- (void)windowDidMove:(NSNotification *)notification {
    // 自动记忆和恢复位置
    [self.window setFrameAutosaveName:@"Position"];
    /* 如果是基于文档的程序
    [[self.window windowController] setShouldCascadeWindows:NO];
    [self.window saveFrameUsingName:[window representedFilename]];
    */
    // 手动记忆位置
    [self.window setFrameUsingName:@"Some name"];
}

// 如果是手动保存,则需要手动恢复

1
2
3
- (void)awakeFromNib {
    [self.window setFrameAutosaveName:@"Some name"];
}

// 清除记忆的位置

1
2
3
- (IBAction)clearWindowPosition:(id)sender {
    [NSWindow removeFrameUsingName:@"Some name"];
}

很简单吧。更多可以参考NSWindows Class ReferenceWindow Programming Guide文档。

(全文完)

Comments