gpt4 book ai didi

java - 在 swt 中提交的多行文本上使用 Tab 键?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:29:44 25 4
gpt4 key购买 nike

如何防止多行文本字段“窃取”Tab 键按下?

我的意思是:我想使用 TAB 在窗口的元素之间循环,但是当我输入多行文本时,TAB 变成了一个“普通”键,只是将制表符插入到我正在输入的文本中。

我该如何处理?我应该编写一些自定义监听器,还是可以使用 SWT 常量更改组件的行为?

最佳答案

SWT 定义了一种使用 TraverseListener 类实现这种行为的机制。以下代码段(摘自 here)显示了如何:

Text text1 = new Text(shell, SWT.MULTI | SWT.WRAP);
text1.setBounds(10,10,150,50);
text1.setText("Tab will traverse out from here.");
text1.addTraverseListener(new TraverseListener() {
public void keyTraversed(TraverseEvent e) {
if (e.detail == SWT.TRAVERSE_TAB_NEXT || e.detail == SWT.TRAVERSE_TAB_PREVIOUS) {
e.doit = true;
}
}
});

关于java - 在 swt 中提交的多行文本上使用 Tab 键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2161714/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com