问题标签 [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 投票
1 回答
1650 浏览

cocoa - 如何实现 NSSearchField 的等效键

我有一个我正在构建的 Cocoa 应用程序,其中包含一个 NSSearchField 控件。我想启用键盘快捷键/等效键,因此当用户按下 COMMAND-OPTION-F 时,搜索字段会获得焦点。

但是,经过大量搜索,我不清楚实现此功能的最佳方法是什么。没有为 Interface Builder 中的 NSSearchField 设置此选项的选项。

是子类 NSSearchField 并监听 keyDown 事件的解决方案(然后查看是否按下了等效键?)

0 投票
1 回答
1410 浏览

cocoa - NSSearchField not working as expected

I'm trying to follow Marcus Zarra in his book 'Core Data'. In the book, he makes a small sample application, but it doesn't give much help when things don't work out...

He starts out by visually designing three entities, and then adding array controllers for each entity to the main nib. Second, he adds a tableview and some other visual components to show data from the array controllers.

So far, I have managed to follow, but now he adds a search field to the gui, and binds it to the same array controller as one of the tableviews. Expected behavior would be for the tableview to get filtered when typing in the search field, but nothing happens.

How do I find out what's wrong?

The relevant parts from the nib is as follow:

NSArrayController Recipes
- Mode = Entity
- Enitity Name = Recipe

TableView w/TableColumn
- Value Bind To Recipes
-- Controller Key = arrangedObjects -- Model Key Path = name

Search Field
- Predicate Bind To Recipes
-- Controller Key = filterPredicate
-- Model Key Path = name
-- Display name = predicate
-- Predicate Format = keyPath contains $value

There are no relevant messages in the console.

regards,
-Vegar

0 投票
1 回答
1046 浏览

cocoa - 如何以编程方式显示 NSSearchField 菜单?

我想实现一个 NSSearchField 显示类似于 Safari 的搜索结果,但我无法弄清楚如何以编程方式显示菜单。任何指针将不胜感激。

更新:我尝试通过在表示搜索字段的搜索字段单元格内的搜索按钮的 @NSButtonCell@ 对象上调用 @-performClick:@ 以编程方式执行此操作,但是虽然我确认确实调用了 performClick,但它不会触发菜单.

0 投票
3 回答
670 浏览

objective-c - 在 NSSearchField 中显示进度指示器

我正在使用 NSSearchField 通过 Internet 运行查询并在表格视图中显示结果。在查询运行时,我想在 NSSearchField 中显示进度指示器?我想我以前在另一个应用程序中看到过这个。

是否有可以用来完成此任务的开源组件?

我该怎么做呢?什么是最好的方法?有哪些陷阱?

0 投票
1 回答
1610 浏览

cocoa - 如何防止 NSSearchField 使用第一个自动完成列表条目覆盖输入的字符串?

我正在寻找一种方法来创建一个行为如下的 nssearchfield:

  • 用户输入文本
  • 根据匹配出现自动完成下拉菜单
  • 搜索字段中的文本不会自动填充到列表中的第一项

关键是,我的字符串匹配搜索任何子字符串和文本字段中的自动完成将不起作用,因为它会覆盖我输入的字符串。事实上,这似乎应该是默认行为,还是我误解了搜索字段的目的?
进一步键入会进一步限制列表,但只有在自动完成下拉列表中选择了一个项目后,该项目才会插入到文本字段中。

如果这不能使用 nssearchfield 完成,是否有替代方法?

0 投票
0 回答
321 浏览

cocoa - 我可以在 NSSearchField/NSTextField 中搜索整个字符串(而不仅仅是单词)吗?

用户必须能够通过仅键入字符串的一部分来搜索整个字符串。
示例:
“this is”应该匹配“Could you tell me where this is?”
匹配的字符串应该在下拉列表中可用,并且文本字段应该显示从下拉列表中选择的字符串。这不适用于自动完成,因为它会自动完成找到匹配的任何文本。
我更喜欢为此使用 NSSearchField (因为它清楚地将自己显示为搜索工具),但它似乎不允许我想要的搜索行为。我的替代方案是什么,我应该如何解决?

0 投票
3 回答
231 浏览

objective-c - 如何不让 NSSearchField 冻结?

我有一个 NSSearchField,它的 action 方法通过分析 sender 参数(字符串)来完成所有搜索工作。

现在搜索的东西(提供一个大数组)是一种 CPU 密集型的,这让我的搜索字段冻结了几秒钟。
在其他情况下,我会分离另一个 NSThread 以防止我的 GUI 冻结。但在这种情况下这是不可能的,因为每次用户在搜索字段中输入另一个字母时,我都会分离另一个(“搜索”)线程。

还有另一种方法可以防止我的 NSSearchField 冻结吗?

顺便说一句:我的猜测是否定的,因为即使是开发者文档的 seach 字段也会一直冻结 :)

0 投票
1 回答
969 浏览

objective-c - 如何将参数传递给选择器?

我有一个 NSSearchField:

这是我的 doSearchQuery:

如何将搜索字段的内容传递给 doSearchWithQuery?

0 投票
1 回答
2977 浏览

cocoa - 当用户在 NSSearchField 中按下回车键时调用函数?

我很惊讶我找不到这个简单任务的答案。我只想让用户输入文本,按回车,然后让应用程序知道他/她输入了什么。我该怎么做?

0 投票
1 回答
3129 浏览

objective-c - 如何让 NSSearchField 在自动完成时发送动作?

这个问题看起来很简单,但我已经尝试了我能想到的所有东西,并且搜索了几个小时。

我有一个自动完成的 NSSearchField,基本上是复制 Apple 的SearchField 示例代码。我在 IB 中关闭了“发送整个搜索字符串”,因为我不想在用户完成他们的文本输入之前进行搜索,并且不想进行多次搜索(它们很昂贵)。

当用户在字段中键入时,当他们按下回车键时,指定他们接受当前的自动完成,我希望 NSSearchField 的动作触发。相反,它似乎只是填写了自动完成功能,然后用户必须再次按 Enter 才能触发该操作。基本上,考虑开始在 Safari 中输入 URL,它会自动完成,然后按 Enter 开始加载页面(触发操作)。他们无需再次按 Enter 键即可开始加载页面。

我尝试过但没有成功的事情:

  • control:textView:commandSelector:, 寻找 insertNewline:。当他们按回车键完成自动完成时,它不会被触发
  • 覆盖 controlTextDidEndEditing:。和上面一样

有任何想法吗?谢谢!