1

我有一个包含两列字段的窗口。左边是 anNSTableView和 an NSTokenField,右边是两个NSTextFields。我希望标签顺序从左边向下,然后向右向下。(所以我的窗口中的顺序应该是NSTableView, NSTokenField, NSTextField, NSTextField。)但是,Cocoa 似乎正在确定自己的首选顺序,从上到下。NSTokenField位于窗口中的位置比任何其他控件都低,因此它始终会从到NSTableViewNSTextFields ,然后返回到左下角NSTokenField

我已尝试遵循 Apple 开发人员文档的这一部分,称为Enable Tabbing Between Text Fields,并按照我想要的顺序在字段之间拖动 Interface Builder 中的 nextKeyView。这似乎对 tab 顺序的影响绝对为零,据我所知,Cocoa 似乎仍然使用其默认检测方法来选择 tab 顺序。

有任何想法吗?我的目标是10.6+。

4

2 回答 2

3

确保您还将initialFirstResponder窗口的出口设置为第一个字段(在本例中为表视图)。

于 2011-05-17T15:29:32.597 回答
0

听起来您将不得不以编程方式进行:
注册controlTextDidEndEditing通知,通过标签识别字段,然后makeFirstResponder:fieldOfYourChoice在窗口上调用。和/或IBAction在场上使用 an ,通过sender, 和 call来识别它makeFirstResponder

于 2011-05-13T22:48:06.453 回答