问题标签 [nssearchfield]

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 投票
0 回答
135 浏览

cocoa - 具有 2 个垂直标题的 NSTableview

我试图实现这样的目标:在此处输入图像描述

我有一个基于视图的 NSTableview,我想在这个 tableview 中显示搜索结果。但我需要分别显示网络搜索和本地图书馆搜索的搜索结果。所以我想知道如何在 NSTableview 中垂直对齐 2 个标题,或者在显示的图片中使用了不同的东西?

谢谢

0 投票
1 回答
130 浏览

macos - NSSearchfield 的内容未对齐

自从升级到 10.9 Mavericks 后,我注意到所有NSSearchfield实例的内容都没有对齐:放大镜图标、文本字段本身和清除按钮都向下移动了一点。

知道可能是什么原因吗?

在此处输入图像描述

0 投票
0 回答
279 浏览

macos - 以编程方式使用 NSArrayController 绑定设置 NSSearchfield

我以编程方式添加了NSSearchField一个。NSTableView我想用NSMutableArray其中包含值的现有值(不是零)填充 TableView。我想在我的程序中以编程方式添加所有内容并绑定NSArrayController到数组,然后填充 TableView。

我被卡住的地方是,我必须将它绑定NSMutableArrayNSArrayController,当我在搜索栏中搜索时,更改必须在 TableView 中生效。

我的 TableView 是单列 TableView,我在某些地方缺少绑定链接。

我想知道预填充NSMutableArray是如何绑定到NSArrayController哪个又绑定到的NSTableView

0 投票
2 回答
2531 浏览

macos - 将 NSArrayController 绑定到 NSSearchField 并在 NSTableView 中查看结果

我的应用说明,

  1. 添加NSMutableArray一些项目(比如1-50)
  2. 将该数组添加NSArrayController并添加/绑定到此 arrayController
  3. 添加到我的视图并使用BINDINGSNSTableView的概念填充它们。
  4. 最后添加一个NSSearchField并通过添加/绑定 NSArrayController 和 searchField 来完成应用程序。

我想知道这种方法是否是它的本意,我已经搜索但找不到在NSTableView使用NSArrayController绑定中显示填充数组的方法。

帮助我度过难关。

0 投票
0 回答
355 浏览

objective-c - 用于动态搜索的 NSSearchField 和 tableview

我正在尝试在 OSX 上移植我的 IOS 应用程序。

在我的 IOS 应用程序中,我有一个 UISearchBar。当用户输入字符时,我发送 HTTP 请求以根据用户输入从服务器中提取数据,并刷新 tableview 的内容。接下来,用户可以在表格视图中选择他正在寻找的正确行。

我想在 OSX 上使用相同的机制,类似于 Maverick 地图应用程序中的搜索文本字段。

在我的 OSX 应用程序中,我有一个 NSSearchField,当用户键入时,我可以发送 HTTP 请求并从我的服务器中提取数据,但是如何将“tableview”关联到 NSSearchField 以显示结果?

我在窗口的 NSToolbar 中有 NSSearchField,并且像 Map App 我想在下面的列表中显示搜索结果。

0 投票
1 回答
476 浏览

objective-c - 如何动态添加列表到搜索字段?

我想实现一个功能,比如当我点击搜索字段时,我需要在搜索字段下显示一个条件列表。根据我需要搜索的标准。如何将此列表添加到搜索字段。提前致谢。

0 投票
1 回答
361 浏览

objective-c - 菜单未更新的 NSSearchField

我有一个基于文档的应用程序,并且在文档视图中,我有一个 NSSearchField。在搜索字段中,我启用了要显示的菜单,并且我已将操作与菜单项相关联。其中一个菜单项称为“Match Case”。我希望能够在这个菜单项旁边放置(和删除)一个检查。当我尝试这样做时,菜单不显示检查。

代码被执行,我收到一条日志消息,显示状态从 0 到 1 再到 0 到 1。但是菜单项旁边从来没有检查。当我在调试时查看菜单项对象时,我确实看到在切换它之前将“状态”值设置为 0 和 1。

关于我缺少什么的任何建议?

0 投票
1 回答
258 浏览

macos - 将一个 NSSearchField 的文本绑定到两个不同的控制器对象

我有两个不同的 NSArrayController,但我想使用一个搜索字段的文本来过滤它们。每个控制器的谓词都不同。是否可以?现在我只能让它一次过滤一个阵列控制器。

0 投票
1 回答
539 浏览

cocoa - NSTextView + NSTextFinder + 我单独的 NSSearchField

我正在尝试使用来自我的自定义 NSSearchField 的搜索查询在 NSTextView 中实现搜索。

听起来很简单,但我无法让它工作。

到目前为止,我已经浏览了所有关于NSTextFinder、其客户端和 FindBarContainer 的 Apple 文档。TextFinder 只是将 FindBarView 提供给容器,当您激活搜索时,容器会显示它。

客户端、容器和 TextFinder 之间的所有通信都是隐藏的。它看起来就像一个黑匣子,旨在“按原样”工作,无需任何定制或干扰。

但是- (void)performAction:(NSTextFinderAction)opNSTextFinder 的方法呢?不是用于向 TextFinder 发送自定义命令吗?

我试图使用以下内容为其分配一个新的搜索字符串:

但这不起作用,只会破坏正常的 findBar 操作。

我有一种强烈的感觉,我做错了什么。我想要的只是在我自己的 NSSearchField 中有一个标准的搜索功能。那可能吗?

我敢打赌,我不是第一个对普通 findBar 不满意的人。

非常需要和感谢您的帮助!

0 投票
2 回答
1150 浏览

objective-c - 如何始终从过滤的 NSTableView 中获取选定的单元格值?

语境

我有一个 2 列、基于单元格的 NSTableView,由 NSArrayController 管理。

  • 第一列填充有复选框以指示该值是否已启用。
  • 第二列代表元素的名称。

该视图链接到 NSSearchField,因此根据将搜索字符串与第 2 列中的字符串进行比较的谓词进行过滤。

更改搜索字符串时,视图正确显示并按预期过滤。

要求

我只需要允许用户最多启用 5 行。为了实现这一点,我正在监视支持数组的更改并跟踪启用条目的数量。如果计数超过 5,则我会通过警报通知用户并通过获取选定的行索引然后在后备数组中禁用该索引来取消选择先前启用的条目。我在 [willChange.. ..didChange] KVO 块中执行此操作。

这在视图未排序时按预期工作,但显然会导致问题,因为所选行不再对应于数组中的适当索引。

因此,如果视图被过滤(搜索字符串不为空),我使用以下代码获取所选单元格的字符串值。然后我遍历数组并禁用匹配字符串的条目。

问题

尽管选定的行总是准确的,但从代表单元格中获取值却不是。看起来最初返回的值是正确的,但是即使选择的索引仍然正确,选择其他行也会从下一行返回数据。我还观察到它从视图中的几行返回值。

更新

在进一步测试之后,第一次应用过滤器似乎可以工作,但是通过不同的字符串过滤会保留第一个选定单元格的单元格值以应对特定的不稳定。

IE:

  1. 加载窗口并选择 6 个项目
  2. 取消选择第 6 项并警告用户
  3. 应用过滤器
  4. 选择新的第 6 项
  5. 取消选择第 6 项并警告用户
  6. 在同一过滤器中选择不同的第 6 项
  7. 取消选择第 6 项并警告用户
  8. 输入新过滤器
  9. 选择新的第 6 项
  10. 取消选择第 6 项并警告用户
  11. 从同一过滤器中选择新的第 6 项
  12. 所选索引正确,但所选行的值与之前的选择相同
  13. 用户反复警告,因为没有取消选择正确的条目,导致 6 个永久选中的条目。

但是,仍然存在返回以下行值而不是先前选择的项目的情况。

问题

我的问题是:

  1. 我是否以正确的方式为过滤列表获取选定的行?
  2. 即使列表已排序,如何根据所选行一致地检索第 2 列的字符串值?

感谢您的时间。

解决方案

我通过更改从以下位置获取单元格的代码解决了这个问题:

至: