2009-12-11 89 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

相關問題