Java 按TAB键将失去对小部件的关注
我正在SWT中使用一个表组件。每当我编辑此表中的值并按enter键时,此值将保存在此表中的文本组件中 但是,当我想输入两个单词时,两个单词之间用一个制表符隔开,那么编辑器就会失去焦点,转到下一个要编辑的单元格(就像在浏览器窗体中按TAB键一样)。我不希望这种情况发生,让我的用户在单词之间输入标签,而不会失去焦点。有人知道怎么做吗Java 按TAB键将失去对小部件的关注,java,eclipse,swt,eclipse-rcp,jface,Java,Eclipse,Swt,Eclipse Rcp,Jface,我正在SWT中使用一个表组件。每当我编辑此表中的值并按enter键时,此值将保存在此表中的文本组件中 但是,当我想输入两个单词时,两个单词之间用一个制表符隔开,那么编辑器就会失去焦点,转到下一个要编辑的单元格(就像在浏览器窗体中按TAB键一样)。我不希望这种情况发生,让我的用户在单词之间输入标签,而不会失去焦点。有人知道怎么做吗 我已准备好尝试使用keyListener,但该listener似乎甚至没有处理tab事件您可以在文本字段中添加一个TraverseListener text.addTr
我已准备好尝试使用keyListener,但该listener似乎甚至没有处理tab事件您可以在文本字段中添加一个
TraverseListener
text.addTraverseListener(new TraverseListener () {
public void keyTraversed(TraverseEvent e) {
switch (e.detail) {
case SWT.TRAVERSE_TAB_NEXT:
case SWT.TRAVERSE_TAB_PREVIOUS: {
e.doit = false;
}
}
}
});
查看示例代码片段。您可以在文本字段中添加一个
transverseListener
text.addTraverseListener(new TraverseListener () {
public void keyTraversed(TraverseEvent e) {
switch (e.detail) {
case SWT.TRAVERSE_TAB_NEXT:
case SWT.TRAVERSE_TAB_PREVIOUS: {
e.doit = false;
}
}
}
});
查看示例代码片段。您不应该发布内容没有任何细节的链接。如果地址无法访问,那么您的答案就毫无价值:感谢Alex Stybaev的建议,但我的表、列、小部件似乎没有实现TraverseListenerInterface@bvanvelsen如果您确实在使用SWT
表
,那么您可以使用表。addTraverseListener(侦听器)
正如Alex建议的那样。你不应该在没有任何内容细节的情况下发布链接。如果地址无法访问,那么您的答案就毫无价值:感谢Alex Stybaev的建议,但我的表、列、小部件似乎没有实现TraverseListenerInterface@bvanvelsen如果您确实在使用SWT表
,那么您可以按照Alex的建议使用表.addTraverseListener(listener)
。