问题标签 [nstoolbar]

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 投票
1 回答
1235 浏览

cocoa - 使用工具栏中的动态调整 NSSegmentedControl 的宽度和位置

我有一个非常动态的 UI,它NSSegmentedControl在其文档窗口的工具栏中使用 a。

NSSegmentedControl动态获取分配的元素。

元素的数量可以在 1 到 15 之间变化很大。

目前,工具栏不会针对 中的元素数量进行调整NSSegmentedControl,即在通过setSegmentCount:所有超出原始宽度NSSegmentedControl(创建窗口时)的段设置段数后被剪裁:

在此处输入图像描述

告诉重新计算其所有元素的宽度的最佳方法是什么NSToolbar,即所有元素的宽度NSSegmentedControl和对它的位置?

0 投票
1 回答
677 浏览

macos - NSSegmentedControl 图像默认大小?

NSSegmentedControl 分段图像的推荐大小是多少?

我目前使用的是 26x26 PNG 图像,它看起来很模糊。

我的应用

我想要的是:

我想要的是

0 投票
1 回答
997 浏览

macos - 在 NSToolbar 中为 NSProgressIndicator 创建一个出口

我有这个基于 OSX 故事板的应用程序,它以这样的开头NSSplitViewController

在此处输入图像描述

splitViewController有两个viewControllers:master和detail。

在窗口里面我有一个NSToolbar。我将 a 拖到NSProgressIndicator该工具栏,然后 Xcode 将其嵌入到NSToolbarItem.

现在我需要从NSProgressIndicator某个类创建一个出口(而不是其他 stackoverflow 问题中解释的操作)。第一个问题是哪一个?

Xcode 不会让我创建一个插座。我已经尝试了这些选项:

  1. ToolbarItemto masterControllerclass 文件、detailController 类文件和 to NSSplitViewControllerclass 中拖动。
  2. 从 ToolbarItem 拖到委托类。
  3. NSProgressIndicatorto masterControllerclass 文件、detailControllerclass 文件和 to NSSplitViewControllerclass 中拖动。
  4. 从 NSProgressIndicator 拖到委托类。
  5. 从 NSToolbarItem 和 NSProgressIndicator 拖到 Window Controller First Responder。

在所有情况下,拖动都不会出现允许我创建出口的窗口。

看在上帝的份上,我该如何创建这样的插座?我把它拖到哪个班级,我该怎么做?

0 投票
1 回答
221 浏览

macos - FirstResponder 作为 NSToolBar 的代表

我有一个 Mac 应用程序,它由一个窗口组成,其中包含可变数量的窗格,每个窗格都包含一个表格视图。该窗口有一个带有按钮的工具栏,我希望当前选定窗格的 VC 来处理验证工具栏项,以及作为它们操作的目标。

如果我可以将第一响应者设置为工具栏的代表,这将自动处理,所以我的问题是这是否可能!我显然已经为此进行了谷歌搜索,一些文章似乎暗示这是可能的,但 IB 似乎不允许我这样做。

0 投票
2 回答
534 浏览

xcode6 - 如何在 Xcode 6 OSX Storyboard 中为 NSToolbar 项目设置 IBOutlet

我正在尝试使用情节提要为 OS X 应用程序的 Xcode 6 中的工具栏项设置 IBOutlet。我看过一个关于设置 IBAction 的示例,但它不适用于 IBOutlets。任何帮助,将不胜感激。

0 投票
2 回答
761 浏览

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

我一直在创建一个首选项面板,当用户点击时会弹出⌘</kbd>+, in my Cocoa app, and I like to use the same General and Downloads icons that are used in Xcode.

在此处输入图像描述

但是,据我所知,当我将图像工具栏项从对象库移动到 IB 中的工具栏,然后在Attribute Inspector上搜索适当的图像名称时,我在列表中找不到这些图标。起初我想知道这是否仅适用于 Apple 的软件,但后来我发现在 3rd 方应用程序中使用了相同的GeneralDownloads图标,例如 Dash:

在此处输入图像描述

此外,NSPreferencesGeneral图像名称中的“通用”图标与上面工具栏中的“通用”图标不同。那么如何在我的应用程序(内置于优胜美地)中使用正确的工具栏图标?

更新

奇怪的是,即使在 Apple 的软件中,也使用了两种通用图标。下面的工具栏来自Calendar.app,但这也用于其他软件,例如SafariTerminal

在此处输入图像描述

这个通用图标看起来与 Retina 显示不完全兼容。更糟糕的是,Xcode 6.2使用了第一张图片中的酷图标,而Xcode 6.3 beta使用了在Calendar.app中看到的尴尬图标。

此外,NSImage 类参考显示了与 Xcode (6.2) 和 Dash 中相同的酷图标。

在此处输入图像描述

那么这里发生了什么……?请注意,我在同一台 Mac 上的同一操作系统上使用了我在这篇文章中提到的所有应用程序。任何人都知道为什么会发生这种情况?

0 投票
2 回答
437 浏览

swift - NSToolbar 宽度错误与 title.hidden

隐藏标题可见性时,是否有人遇到过 NSToolbar 宽度相对于窗口宽度不正确?退出并重新启动应用程序后,工具栏似乎没有保持正确的大小。

我在我的 NSWindow 子类中使用它:

在我的应用程序重新启动后这样做时,最右侧的工具栏项目没有紧贴窗口的边缘,我可以看到工具栏没有被完全重绘......

0 投票
0 回答
813 浏览

xcode - Xcode OS X 使用 NSToolbar 来改变视图 (swift)

我有一个带有窗口控制器的故事板。该窗口控制器有一个带有 2 个 NSToolbarItems、view1 和 view2 的 NSToolbar。这是 WindowController 的代码:

我还有一个在启动时加载的视图控制器(ViewController)。这是另外两个视图控制器(View1)和(View2)的代码

这是我的故事板布局:(我似乎无法发布图片,我的声誉很低)希望你能理解

[MainWindow] -> [SplitViewController] -> [SideBar (尚未使用)]

---------------------------------------------> [视图控制器]

然后故事板中有两个独立的视图控制器,没有连接到任何东西。视图 1 和视图 2

View1 和 View2 都分别具有情节提要 ID 的 View1 和 View2。

运行应用程序并单击工具栏上的视图按钮之一时,我在控制台中收到一条错误消息:

2015-03-19 10:35:31.448 ToolbarTest[16032:2922107] -[NSNib initWithNibNamed:bundle:] 无法加载 nibName:捆绑包中的 ToolbarTest.ViewController(空)。

我究竟做错了什么?

0 投票
2 回答
1293 浏览

macos - 在保留标题可见性的同时使用组合的标题栏 + 工具栏

System Preferences 应用程序具有组合的标题栏和工具栏,带有垂直居中的按钮和标题。我试图在我的应用程序中完全模仿这一点。我已经能够使用 Interface Builder 组合标题栏和工具栏(在 NSWindow 检查标题栏和统一标题和工具栏),但这不会垂直居中内容。我通过这个问题发现,您可以简单地将窗口设置为titleVisibility使NSWindowTitleHidden红绿灯按钮垂直居中的位置。不幸的是,这当然隐藏了标题。如何在统一的标题栏/工具栏中垂直居中内容并像系统偏好一样显示窗口的标题 - 无论是在 IB 中还是以编程方式?

在此处输入图像描述

0 投票
3 回答
1579 浏览

macos - 将 NSTitlebarAccessoryViewController 添加到标题栏/工具栏的左侧

我已经实现了一个统一的标题栏/工具栏,现在想在栏上添加两个按钮。它们需要位于最左侧,就在红绿灯按钮的右侧。我正在创建一个与系统偏好设置非常相似的工具栏。

我查看了用于添加的 API,NSTitlebarAccessoryViewController唯一有效的属性layoutAttributeNSLayoutAttributeRight(将视图添加到工具栏的最右侧),NSLayoutAttributeBottom它基本上将视图放置在其自己的工具栏中的统一工具栏下方。

我不想要这些选项,那么如何在统一工具栏的最左侧添加一堆按钮?

在此处输入图像描述