通过Cocoa中的计时器隐藏NSPanel

时间:2010-04-01 20:20:35

标签: cocoa

我是Cocoa的新手,想知道如何在计时器打勾时隐藏NSPanel,我试图打电话 [myNSPanel orderout:self],代码运行但面板仍在那里。我需要做一些与众不同的事吗?提前谢谢。

1 个答案:

答案 0 :(得分:0)

首先,选择器为orderOut:,选择器区分大小写,因此如果您的代码实际上是orderout:,那么您将获得一个不响应选择器异常(您可以在调试器控制台中看到),这就是您的代码无法正常工作的原因。

如果修复后仍然无效,请确保myNSPanel(我认为是插座)实际上已连接到相关面板。一个很常见的错误就是忘记连接插座;执行此操作时,outlet变量中的指针为nil,而nil的消息则不执行任何操作。

您可以通过记录指针来检查:NSLog(@"%p", myNSPanel);。运行该语句后,调试器控制台将包含一行,告诉您myNSPanel变量中的指针。如果是0x0,那就是nil