问题标签 [nstokenfield]
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.
swift - 拖动到另一个字段时如何强制 NSTokenField *move* 标记?
NSTokenField
将标记从一个字段拖放到另一个字段时的默认拖动操作是NSDragOperationCopy
. 执行拖动时按住 Command 键会将操作更改为NSDragOperationMove
。
如何反转此默认行为,以便默认移动令牌,并且仅在按住 Option 键时复制?
我试图模仿 Mail 中撰写窗口的行为,在该窗口中,将电子邮件令牌从 To 字段拖到 Cc 字段会默认移动令牌,并在按住 Option 键时复制它。
我已经尝试子类NSTokenField
化并覆盖draggingEntered:
返回NSDragOperationMove
,但这似乎不起作用。
更新:
默认情况下,我最终打开了dragOperationForDraggingInfo:type:
方法NSTextView
并在实现中返回NSDragOperationMove
。我还检查选项键是否关闭,NSDragOperationCopy
如果为真则返回。目前这似乎按预期工作,但我不确定方法调配是否是最好的方法。
nstextview - 在 NSTextView 字段编辑器中提高基线
我想在输入文本时操纵基线NSTokenField
以匹配显示的标记。为此,我遵循文档中的“使用字段编辑器”指南。建议在编辑之前覆盖- (NSText *)setUpFieldEditorAttributes:(NSText *)textObj;
关联的方法NSTextFieldCell
以调整字段编辑器属性。这是我在那里做的:
正如我可以在日志的帮助下确认的那样,调用了 get 方法。但是,基线在编辑时根本不会改变。同样调用其他类似[fieldEditor loosenKerning:self]
的方法应该产生可见的结果似乎没有任何效果。我在这里做错了什么或做得更好 - 我怎样才能实现我想要的?