一千萬個為什麽

搜索

如何啟用/禁用NSToolbarItem

我有一個項目,需要禁用/啟用一些NSToolbarItems取決於不同的選項。我查了一下,發現沒有參數。

有沒有辦法啟用/禁用NSToolbarItem?

最佳答案

在窗口,視圖或文檔控制器中實現NSToolbarItemValidation協議。該文檔提供了以下示例代碼:

-(BOOL)validateToolbarItem:(NSToolbarItem *)toolbarItem {

    BOOL enable = NO;
    if ([[toolbarItem itemIdentifier] isEqual:SaveDocToolbarItemIdentifier]) {

       //We will return YES (enable the save item)
       //only when the document is dirty and needs saving
        enable = [self isDocumentEdited];

    } else if ([[toolbarItem itemIdentifier] isEqual:NSToolbarPrintItemIdentifier]) {

       //always enable print for this window
        enable = YES;
    }
    return enable;
}

您還可以使用 actiontag 來確定要驗證的工具欄項。每當您的應用程序被激活或調度事件時,項目都會經常驗證,因此它們將始終處於有效狀態。

轉載註明原文: 如何啟用/禁用NSToolbarItem