我正在尝试将自动完成添加到我当前的代码中,所以经过无数次我决定尝试SwingX
。
代码可以编译,可以工作,但是我仍然有一些“小”问题。
这是我的代码:
public class GuiHandler extends javax.swing.JFrame {
private javax.swing.JTextField jtfBoxOfCurrentPath;
// more irrelevant code
private void afterXMLfileWasUploaded() {
String[] tab = {"abc", "def", "ghjk", "lmnop", "qrst", "rstuv", "wxyz"};
JList list = new JList(tab); //data has type Object[]
// jtfBoxOfCurrentPath.setToolTipText(""); // I removed this line , this is when I don't want to use auto-completion
AutoCompleteDecorator.decorate(list, jtfBoxOfCurrentPath, ObjectToStringConverter.DEFAULT_IMPLEMENTATION);
jtfBoxOfCurrentPath.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(java.awt.event.ActionEvent evt)
{
boxOfCurrentPathActionPerformed(evt);
}
});
// and more code
这是我的程序的一般视图: 。正如方法名称所提到的afterXMLfileWasUploaded
,在我点击open XML file
按钮后,文件被上传并解析到程序中(没问题)。
但是当我尝试在框中写一些东西时Current path
,然后:
我只能从
tab
上面的数组中写单词我不能写以未列出的字符开头的任何其他单词或字符
“abc”、“def”、“ghjk”、“lmnop”、“qrst”、“rstuv”、“wxyz”
我实际上无法擦除使用
tab
上面的数组编写的任何单词。
那怎么了?任何帮助将不胜感激
问候