【问题标题】:Setting an NSScrollView uneditable - Xcode x86_64 architecture设置 NSScrollView 不可编辑 - Xcode x86_64 架构
【发布时间】:2010-07-18 13:58:44
【问题描述】:

我正在为某人制作应用程序,我需要使 NSScrollView 中的这个 NSTextView 不可编辑。无论我做什么,我都无法得到任何工作。 Interface Builder 中没有可编辑或允许编辑复选框,因此我将以编程方式进行。到目前为止,我已经尝试了以下代码。

[TextView setEditable:NO];
[TextView setEditable:FALSE];
[TextView.editable = NO];
[TextView.editable = FALSE];
[TextView editingNotAllowed];

我就是什么都做不了。如果有人可以请帮助,那将不胜感激!另外,我正在这样做:

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
}

非常感谢您的帮助!

【问题讨论】:

  • IB 中没有可编辑的复选框?我看到一个。
  • 它不是 NSTextView,它是“NSScrollView 中的 NSTextView”。
  • 所以?您仍然可以选择 NSTextView 并设置其属性。
  • 不,它不允许我这样做。试试看,自己看看。
  • 如果单击一次,则选择 NSScrollView。再次单击它,NSTextView 被选中。

标签: objective-c xcode macos editing x86-64


【解决方案1】:

您是否查看过NSTextView 的委托方法? (特别是NSTextDelegate

如果你实现 textShouldBeginEditing: 并返回 NO,它不应该编辑。

http://developer.apple.com/mac/library/documentation/Cocoa/Reference/NSTextDelegate_Protocol/Reference/Reference.html#//apple_ref/occ/intfm/NSTextDelegate/textShouldBeginEditing:

【讨论】:

  • 您的 TextView 在哪里实例化?您能否确认委托方法是否被调用?
猜你喜欢
  • 2014-04-15
  • 1970-01-01
  • 1970-01-01
  • 2019-07-14
  • 2012-04-23
  • 1970-01-01
  • 2015-02-10
  • 2014-08-09
  • 1970-01-01
相关资源
最近更新 更多