2010-01-18 60 views
6

我想在非基於文檔的應用程序中啓用灰色打開文件菜單項。基於文檔的應用程序會自動爲您提供一個不錯的打開文件對話框,其中包含基於plist條目的文件擴展名過濾器......當然,存在一個簡單優雅的方法來重新啓用此功能。在非基於文檔的應用程序中啓用打開文件菜單項

我有...

  1. 添加的文檔類型的項目屬性窗口
  2. 分配我的控制器類作爲應用程序委託
  3. 新增委託申請:中openFile:我的控制器類

回答

3

關鍵是沿着菜單項的響應鏈必須響應-openDocument:操作。通常是NSDocumentController。我會看看空的基於文檔的應用程序如何設置該菜單項。

+1

它被連接到MainMenu.xib中的第一響應者。它也應該在非基於文檔的應用程序模板的MainMenu.xib中很有吸引力。如果沒有,掛鉤它,然後在響應者鏈中並響應'openDocument:'。 – 2010-01-18 07:02:12

3

首先,確保您的文件 - >打開菜單項的選擇器連接到第一響應者的openDocument:操作。

其次,確保您正在響應該操作。看看Responder chain of a non-document application with an NSWindowController object。響應者鏈中的任何對象都可以對消息作出響應,但最好選擇最適合和最適合的對象。一旦確定了響應者鏈中的哪個類最適合處理該消息,請將openDocument:操作添加到它的實現中,並編寫代碼對其進行相應響應。

相關問題