【发布时间】:2020-02-29 14:37:14
【问题描述】:
问题:当你双击JTextArea中的单词时它被标记,但是当你不释放鼠标按钮并尝试标记下一个单词时,它不是标记整个单词,而是而是单个字符。
移动鼠标(双击)时,它应该标记整个单词(不是单个字符)。这实际上是我尝试过的所有程序中的默认行为,例如:记事本、Firefox、Chrome、Word,甚至 Netbeans 等。
与三次单击相同(当按住并移动鼠标时应该标记下一行,而不是字符)。
有什么想法吗?我很难用谷歌搜索这个,但由于这是一件很常见的事情,我相信一定有一个简单的选择,或者至少有人已经有了解决方案。
示例代码:
public class TestJTextArea
{
public static void main(final String[] args)
{
final JPanel panel = new JPanel(new BorderLayout());
panel.setPreferredSize(new Dimension(500, 500));
panel.add(new JTextArea(), BorderLayout.CENTER);
final JFrame frame = new JFrame("Test");
frame.getContentPane().add(panel, BorderLayout.CENTER);
frame.pack();
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}
【问题讨论】:
-
“有什么想法吗?” 1) 仔细考虑合适的标签。 2) 发布minimal reproducible example。
-
它会影响新的JTextArea,只需将JTextArea添加到JPanel并在JFrame中显示即可。
-
"just add.." 如果您不介意在 MRE / SSCCE 中展示这一点,我为什么要(或其他任何人)?
-
好的,添加了示例代码。谢谢! :)
标签: java swing selection jtextarea double-click