【问题标题】:TextFields not loading in subclass of NSWindowControllerTextFields 未加载到 NSWindowController 的子类中
【发布时间】:2009-11-04 06:31:12
【问题描述】:

我正在开发第二个首选项样式面板(但首选项与特定文档相关。)我的 myDocument 文件有点大,所以我决定尝试使用单独的子类 WindowController 来实现。

我已经继承了 NSWindowController。 nib 文件的所有者为 myController。它同时实现了 windowDidLoad 和 awakeFromNib。它有一个 TabView,每个 TabView 有几个 TextField、一个 ComboBox、2 个 TextView 和几个按钮(取消和确定)。 Window、TabViews、Cancel和OK按钮的指针正在建立,但是comboBox、TextFields和TextViews的指针都是nil。

所有的 TextFields、TextViews 和 Buttons 都可以看到窗口。 TabView 正在切换视图。我可以编辑所有的 TextField,但是当我关闭窗口时,我无法初始化它们或从中获取信息。

我正在使用 XCode 3.2 和 Objective-C。

我错过了什么?

艾伦

【问题讨论】:

    标签: objective-c subclass textfield nswindowcontroller


    【解决方案1】:

    首先,显而易见:您是否检查过这些插座在您的 xib 中没有断开连接?无论您对这些工具有多么有经验,这都是一个可笑的普遍问题。 :-)

    其次,-windowDidLoad 和 -awakeFromNib 中的代码是什么?您可能希望列出这两种方法中“触及”问题出处的所有内容。您是否有可能将它们分配给其他东西?

    【讨论】:

    • 它们似乎在 nib 文件中正确连接。我目前没有对他们做任何事情,因为他们是零。艾伦
    【解决方案2】:

    我找到了答案。这是一个命名空间问题。我有一个 setXXXTextField 函数,其中 TextField 被命名为 XXXTextField。因此,在尝试初始化指针时,它调用了我的 set 函数,该函数并非旨在设置指针。

    无论如何,感谢您的帮助,它让我看得更深入。 艾伦

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多