问题标签 [nstoolbaritem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1702 浏览

macos - 如何使用 Swift 1.2 / Cocoa 以编程方式在 NSToolbar 上选择 NSToolbarItem

我正在使用最新的 XCode 6.4 和 Swift 1.2。我正在尝试以编程方式在我的 NSToolbar 中选择一个 NSToolbarItem。我在互联网上搜索了很多,应该有 NSToolbar 的方法,称为setSelectedItemIdentifier,但该方法不存在(不再存在?)。

还有另一种方法可以做到这一点吗?也许是这样的:

但我不知道我应该用什么来代替“点击”。提前致谢!

Neo 回复后更新: 我希望工具栏项在视觉上被“选中”,从而改变其颜色。我知道如何调用函数,但这不会改变工具栏项的“选定”状态。因此,如果我可以模拟鼠标单击 nstoolbaritem,那将解决我猜的问题(或替换 NSToolbar.setSelectedItemIdentifier)。

0 投票
1 回答
725 浏览

macos - NSToolbarItem 拉伸到最小宽度

我在NSToolbar窗口中添加了一个并插入了一些项目。其中两个包含一个自定义视图(NSTextFiled作为标签和一个NSButton)。我已经为这两个项目设置了最大和最小宽度,它们显示得很好,但它们比制作标签所需的大得多,尤其是按钮大得令人讨厌,而且空间不足。

按钮太大

我正在寻找一种方法来将按钮及其项目的宽度设置为其包含的文本所需的最小值。

0 投票
1 回答
477 浏览

objective-c - 当它们都可见时,如何使 NSToolbar 标签随其图标一起移动

我的应用程序在其下方NSToolbar有一个水平线NSSplitView。工具栏中的NSSegmentedControl与 splitview 的分隔符一起移动,就像 OS X 的 Finder 中的一样。NSLayoutGuide用于对齐来自不同故事板“场景”的两个“视图”。我在这个相关问题中分享了这种方法。

但是,我不知道如何移动带有图标的标签。我已经设置了minSizeand maxSize,但是标签是固定的。在下面的第一个屏幕截图中,“查看模式”标签不在分段控件的正下方。

如果我可以访问它,将很容易向标签添加约束。但是我在NSToolbarItem中没有找到 API ,它只有一个公共view属性。我检查了视图的层次结构(第二个屏幕截图),但我认为我不应该使用带有_前缀的变量。

这里有一个相关但不同的问题。这个问题没有考虑到移动。

问题:标签不在图标下方

视图层次结构

0 投票
1 回答
45 浏览

xcode - 使用 Xcode 7 上迁移的 xibs 隐藏的 NSToolbar 项目

我们正在使用 xib 文件来显示窗口 + 工具栏。使用最新的 Xcode(7 或 7.1)编译 Mac OS 应用程序会使我们的工具栏项在 Yosemite 10.10.5 中被隐藏,但它在 El Capitan 上运行良好。在此处输入图像描述

如果我单击该区域,则会执行操作,因此只有标签和图像被隐藏。

我已经使用 Xcode 7.1 从头开始​​重新创建了 xib 文件,但问题仍然存在。

仅供参考:回顾我们的代码历史,在 Xcode 7 启动之前,编译应用程序而不将 xibs 迁移到 Xcode 7,这个问题是不可重现的。

0 投票
1 回答
504 浏览

macos - 带有图标和标签的统一 NSToolBar/Titlebar?

我们的设计者想要一个统一的工具栏/标题栏(例如 Safari、XCode 等使用的),但想要图标下的标签。我将 NSToolbar 上的显示模式设置为,IconAndLabel但我仍然只得到图标......如果我将标题和工具栏分开,标签就会显示出来。

我在文档中甚至通过谷歌搜索都没有发现任何东西表明您被迫进入仅图标视图,但似乎确实如此。在这些按钮上获得标签的最佳方法是什么?我想避免将标签放在我的图像资产中,因为这会使本地化复杂化,所以如果这是唯一的选择,我必须使用本地化字符串以编程方式进行。

0 投票
0 回答
61 浏览

objective-c - 禁用触发 segue 的 NSToolbarItem

我有一个带有许多 NSToolbarItems 的 NSToolbar,其中一些连接到方法,其中一些直接触发一个 segue(一个是 sheet segue,另一个是 show segue)。

我已经实现:

根据需要启用/禁用按钮。不幸的是,该方法从未为触发 segue 的两个 NSToolbarItems 调用。

所有 NSToolbarItems 在 NO 处都有 Autovalidates。

我错过了什么?

0 投票
0 回答
196 浏览

swift - 如何在 NSToolbar 中访问控制?

使用分段控件作为 NSToolbarItem。IBAction 方法工作正常,因为我可以访问所选的段。而且我能够通过如下自定义子类来验证控件。

我无法做的是访问控件以满足其他需求,例如在通过菜单项而不是单击工具栏项选择选项时重置选定的段。在 iOS 中,我会通过控制拖动分段控件来创建一个插座,但这似乎不会在 OS x 的视图控制器中创建一个插座。访问控件的最佳做法是什么?

此外,从 NSToolbarItem 的子类中,访问视图控制器或文档的方法和属性的正确方法是什么,以确定是否应该启用或禁用该工具?

感谢您的建议。

0 投票
2 回答
340 浏览

swift - 绑定到 NSToolbarItem 的 Cocoa 连接是否会阻止取消初始化?

尝试将通过连接绑定到属性 (optionSegment) 的选定段NSToolbarItem设置NSSegmentedControl。这样子类化窗口控制器

或者,将 optionSegment 属性放在NSDocument子类中并绑定到该子类。每个作品。问题是,有了这个绑定,或者看似任何对 的绑定NSToolbarItem,我的任何对象(视图、视图控制器、文档等)都不会取消初始化。有了绑定,他们就没有。删除绑定,他们这样做。

任何想法为什么会这样?建议?好难过。

谢谢!

0 投票
1 回答
802 浏览

macos - 如何将两个触摸工具栏项添加到 NSToolbar

我想向 中添加两个触摸项目,例如前进和后退按钮,NSToolbar如下所示:

在此处输入图像描述

NSToolbar似乎默认为每个项目添加水平边距,如下所示:

在此处输入图像描述

我检查了toolbarItem节点下的 XIB 源代码,并且没有提供边距或填充的属性/属性。

谢谢你的帮助!

0 投票
0 回答
79 浏览

cocoa - NSToolbarItem 的不稳定动作

我正在使用工具栏按钮来控制一个简单的 NSTask。当 IBAction 由常规按钮给出时,下面的代码按预期工作,但当它由 NSToolbarItem 给出时会产生工件。更准确地说,运行按钮不会被禁用。任何想法将不胜感激。