我是一個MacRuby和可可的完整n00b,所以請記住在回答時 - 我需要大量的細節和解釋。 :)MacRuby +界面生成器:如何顯示,然後關閉,然後再次顯示一個窗口
我已經建立了一個簡單的項目,它有2個窗口,它們都是用Interface Builder構建的。第一個窗口是使用表格視圖的簡單帳戶列表。它在表格下方有一個「+」按鈕。當我點擊+按鈕時,我想顯示一個「添加新帳戶」窗口。
我還有一個AccountsController < NSWindowController
和一個AddNewAccountController < NSWindowController
類,它們被設置爲這些窗口的代表,並使用適當的按鈕點擊方法連接,並且插座引用所需的窗口。
當我點擊帳戶窗口中的「+」按鈕,我有這樣的代碼火:
@add_account.center
@add_account.display
@add_account.makeKeyAndOrderFront(nil)
@add_account.orderFrontRegardless
這個偉大的工程,我第一次點擊+按鈕。一切都顯示出來了,我可以輸入數據並將其綁定到我的模型。但是,當我關閉添加新帳戶表單時,情況開始變差。
如果我設置添加新帳戶窗口關閉,然後第二次點擊+按鈕,窗口仍然會彈出,但它被凍結。我無法點擊任何按鈕,輸入任何數據,甚至關閉表格。我認爲這是因爲表單的代碼已經發布,所以沒有消息循環處理表單......但我不完全確定這一點。
如果我設置添加新帳戶窗口不關閉,然後第二次我點擊+按鈕,窗口顯示正常,它是可用的 - 但它仍然有我以前輸入的所有數據...它仍然綁定到我以前的Account類實例。
我做錯了什麼?當我點擊賬戶表格上的+按鈕時,創建添加新賬戶表單的新實例,創建新的賬戶模型,將該模型綁定到表單並顯示錶單,有什麼正確的方法?
...這是所有正在對OSX 10.6.6,64位完成後,用了XCode 3.2.4
您是否已將其他元件連接到控制器(按鈕/ textareas)?我有麻煩的下面的教程顯示nsobjects下拉菜單控制器消息 – 2011-02-27 10:08:12