首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为NSPersistentDocument窗口提供标题

如何为NSPersistentDocument窗口提供标题
EN

Stack Overflow用户
提问于 2009-01-14 09:28:16
回答 3查看 476关注 0票数 0

我已经创建了NSPersistentDocument的子类。我也重命名了这个窗口。但是当我运行应用程序时,我得到的应用程序窗口的标题是"Untitled“。没有可以用来更改标题的-setTitle:方法。有什么想法吗?我该怎么做呢?

EN

回答 3

Stack Overflow用户

发布于 2009-01-14 10:27:52

您是否通过向窗口发送setTitle:来设置标题?

如果是这样,那就错了。改为设置文档的displayName。(请记住,NSPersistentDocumentNSDocument的子类。)

票数 3
EN

Stack Overflow用户

发布于 2009-01-14 16:55:48

您不需要更改标题,您的用户可以通过保存文档来更改。

票数 3
EN

Stack Overflow用户

发布于 2009-09-29 03:45:03

您可以将窗口的标题绑定到文档,并使用Key-Value-Observation来更新它。

使用Interface Builder选择MyDocument.xib的“窗口”并移动到检查器中的“Bindings”选项卡。选中“title”以绑定到“File‘s Owner”,并将“Model Key Path”选为“title”。

然后在NSPersistentDocument的子类中添加以下代码

代码语言:javascript
复制
@interface MyDocument : NSPersistentDocument {
  NSString * _title;
}  
@end

@implementation MyDocument

//P All kinds of all your good stuff here

- (NSString *) title {
  return _title;
}

@end

例如

代码语言:javascript
复制
- (BOOL)readFromURL:(NSURL *)absoluteURL 
             ofType:(NSString *)typeName 
              error:(NSError **)outError {

  //P All your good code

  [self willChangeValueForKey:@"title"];
  _title = [absoluteURL lastPathComponent];
  [self didChangeValueForKey:@"title"];  

  //P More good code

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/442396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档