2009-12-11 63 views
4

我无法找到有关Interface Builder为触发其他组件的事件和消息的组件之间的图形连接确定发送消息输出方式的文档。
我想生成封装有限状态自动机的组件。输入部分很简单,只需定义IBAction消息,并且可以在Interface Builder中连接它们。棘手的部分显然是这种连接的另一端。
我想为FSM触发的每个事件提供一个独特的出口,如NSButton的'选择器'出口(在检查器的“连接”选项卡上的“已发送消息”下列出)。
如何以编程方式指定这些接口,并且可以指定多个这些接口? 或者这种方法不适合;通知会更好吗? (我使用Visual Age和Parts的图形连接,所以我更喜欢它们,但是在Interface Builder中,对这种连接的支持似乎有所限制)。如何在Interface Builder中提供自己发送的消息

在此先感谢

我的问题的第一部分已经ansered的问题“发送动作可可 - IBAction为”。我仍在寻找定义多个“发送消息”的可能性。

回答

0

当您使用IBActions实现您的方法时,生成消息的对象(发件人)被传递给消息。因此,如果我的界面上有一个按钮“Logout”,并在某个名为logout:的控制器对象上执行了操作,并且已将它们连接起来,则该方法会接收触发该按钮的按钮实例。例如:

- (void)logout:(id)sender 
{ 
    // sender is the instance of whichever wired button triggered 
    // this action. We just NSLog() it for now. 
    NSLog(@"-[%@ logout:%@]", self, sender); 
} 

其他对象也可能会调用此操作,并且可能将自己作为发件人或可能通过零。这些细节将留给你作为设计师。

+2

这很清楚,但问题是,我如何设计发件人,以便通过Interface Builder将其识别为发件人,并且IB可以建立连接。对于接收机,很明显,将方法定义为IBAction并使用一个参数就足够了。我试图找出,我如何设计发件人接口来支持IB的连接机制。 – 2009-12-11 20:25:54

相关问题