現在のコードにオートコンプリートを追加しようとしているので、何度も試してみることにしました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
上記の配列を使用して書かれた単語を実際に消去することはできません。
では、何が問題なのですか?どんな助けでも大歓迎です
よろしく