使用Java中的文档侦听器自动完成文本框

时间:2016-11-24 20:20:26

标签: java swing documentlistener documentfilter

我正在尝试为我正在撰写的程序制作一个自动填充文本框。我有逻辑,但我在正确实施它时遇到了一些麻烦。首先我用一个关键的监听器尝试了它,但是这个解决方案在同时处理多个按键的方式上有点奇怪。然后我尝试了更好的DocumentListener,但由于线程问题,我不允许我在Listener中编辑文档。我读了一些关于DocumentFilter的内容,但我找不到关于如何使用它的单一指南。有没有一种方法可以使用documentListener编辑doc?或者你会推荐DocumentFilter,如果是这样,你如何使用它?

1 个答案:

答案 0 :(得分:0)

不应使用DocumentListener编辑文档。这样做需要调用SwingUtilities.invokeLater(...),并且由于DocumentListener检测到文档的更改,因此任何编辑都将导致无限循环。最好的办法是使用DocumentFilter。