2011-06-17 56 views
2

在學習objective-c時,我製作了一個基本的Mac購物列表應用程序,它具有3個界面元素:NSTextField,NSButtonNSTableView。基本思想是你在文本字段中輸入內容,點擊添加按鈕(或者按回車鍵),然後將它添加到表格視圖中。一切都按預期工作,直到我點擊表格視圖時,它將當前添加到文本字段的表格視圖添加到表格視圖中。NSTableView點擊時觸發另一個動作

我唯一的動作是addItem它增加了文本字段的stringValueNSTableView的數據源,NSMutableArray。我已將它設置爲僅由按鈕和文本字段觸發,而不是NSTableView。當我從NSTextField中刪除該操作時,問題就會停止。有什麼建議麼?

+0

你究竟是如何設定行動的?通過Ctrl-從文本字段拖動到實現addItem的對象? – puzzle

+0

這個問題得到了回答,但作爲參考,我試圖通過按住Ctrl拖動文本字段和編程方式[在這[] http://stackoverflow.com/questions/995758/execute-an-action-when-the-輸入鍵被按下 - 在 - 一個字段/ 996694#996694)答案。兩者都有同樣的效果。 –

回答

3

NSTextField激發其作用既當用戶點擊輸入關鍵當它失去焦點。當您點擊NSTableView時,NSTextField失去焦點,因此它會調用它的操作。

如果你只希望它發送它的行動輸入,有一個彈出按鈕,在NSTextField的屬性標記爲‘行動’,你可以設置選項卡‘已發送上只輸入’。

+0

謝謝!這工作完美。 –

相關問題