我有一个带有立方体的Quartz组合,并且发布了X/Y/Z旋转输入。在Interface Builder上,我创建了一个QCView和一个QCPatchController,并加载了前面的Quartz组合。在QCView中,面片控制器被绑定,旋转发布的端口也被绑定到三个NSSlider,所以当我更改NSSlider's的值时,立方体将旋转。
所有这些都很好用,但我想从XCode上的应用程序代理中更改立方体的旋转值。我试图在IBOutlets指向的情况下更改NSSliders的值,但此更改不适用于立方体,就像我用鼠标直接更改滑块时一样。
我应该实例化什么和/或如何通过CQPatchController访问和更改此Input_Ports.value
非常感谢你的阅读,我真的需要帮助!
发布于 2010-04-03 23:52:46
这其实很简单!补丁控制器可以很好地接受KVC的setValue:forKeyPath:。(所需的密钥路径可能类似于patch.Input_Ports.value。)
要连接到补丁控制器,您需要向应用程序代理添加一个插座。在应用程序代理的.h文件中,添加一个实例变量IBOutlet NSObjectController* patchController。
IBOutlet不会为编译器做任何事情,但它会向接口构建器发出信号,告诉它有一个出口。一旦您添加了该行,您将能够返回到Interface Builder并按住control并从您的应用程序代理拖动到您的补丁控制器,从而将patchController出口连接到.nib文件中的特定实例。
(没有用于QCPatchController的.h文件,但它是NSObjectController的子类,因此您可以安全地声明它。)
https://stackoverflow.com/questions/2571687
复制相似问题