objective-c - NSToolBar 带有两个自定义按钮

标签 objective-c cocoa nstoolbar nstoolbaritem

我是Mac开发的初学者。我正在使用工具栏开发一个应用程序。我只是想在工具栏中添加两个自定义按钮。

工具栏将如下所示。我已经尝试过使用 XIB,但我没有得到这个东西,.,. THIS

对此有任何想法。

提前致谢

最佳答案

简短回答:您需要验证每个非默认的工具栏项目。

<小时/>

长答案:

  1. 首先,您需要将 NSToolbarItem Action 连接到代码中的IBAction
  2. 那么你有两个选择:
    • 让自动验证器通过简单地检查是否存在有效的目标/操作对来完成其工作。
    • 亲自验证每个工具栏项目。您可以在此处检查是否有任何内容需要复制/粘贴

验证示例:

- (BOOL)validateUserInterfaceItem:(id < NSValidatedUserInterfaceItem >)theMenuItem {
    BOOL enable = NO;

    if ([theMenuItem action] == @selector(myCopy:)) {
        if (isThereSomethingToCopy)
            enable = YES;
    }
    else if ([theMenuItem action] == @selector(myPaste:)) {
        if ( (isThereSomethingToPaste) && (thereIsValidPasteTarget) )
            enable = YES;
    }
    return enable;
}

关于objective-c - NSToolBar 带有两个自定义按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11357779/

相关文章:

objective-c - NSTableView - 在 2 个数据源之间切换

swift - NSToolbar 内的 NSSearchField 和 NSSegmentedControl

macos - 如何将工具栏(或其项目)与分割 View Controller 子项的前缘对齐?

ios - 自定义 UIViews 奇怪的行为

ios - 使用 [__SwiftValue set] : unrecognized selector sent to instance 将 AppDelegate 从 Objective-C 转换为 Swift 后,每次转场时应用程序都会崩溃

ios - 未调用 didReceiveRemoteNotification,iOS 10

iphone - UIViewController 内的 UITabBarController = viewDidAppear : not called

objective-c - NSArrayController - 观察选择索引

MacOS GameKit 排行榜无法加载,并出现 App "does not support leaderboards"错误

xcode - 如何使用 Xcode 首选项面板中的常规和下载图标?