java - JFrame 中的自动完成装饰器

标签 java swing

我正在学习 Swing 并尝试制作一个具有自动完成功能的文本编辑器作为练习。我使用 Netbeans。

当我创建 JFrame 并向其添加文本区域时,我最终会得到这样的自动生成的代码:

package javaapplication5;
public class NewJFrame extends javax.swing.JFrame {
    public NewJFrame() {
        initComponents();
    }

@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    jScrollPane1 = new javax.swing.JScrollPane();
    jTextArea1 = new javax.swing.JTextArea();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

    jTextArea1.setColumns(20);
    jTextArea1.setRows(5);
    jScrollPane1.setViewportView(jTextArea1);

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 400, Short.MAX_VALUE)
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 300, Short.MAX_VALUE)
    );

    pack();
}// </editor-fold>                        

public static void main(String args[]) {
   java.awt.EventQueue.invokeLater(new Runnable() {
        public void run() {
            new NewJFrame().setVisible(true);
        }
    });
}
// Variables declaration - do not modify                     
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTextArea jTextArea1;
// End of variables declaration                   

}

我想尝试的是应用

中描述的自动完成装饰器
http://www.jdocs.com/swingx/1.0/org/jdesktop/swingx/autocomplete/AutoCompleteDecorator.html

当我尝试做

List list = Arrays.asList("A", "B", "C");
AutoCompleteDecorator.decorate(jTextArea1, list);

结果是:

error: <identifier> expected
AutoCompleteDecorator.decorate(jTextArea1, list);

代码有什么问题吗?

最佳答案

在 google 中搜索 AutoCompleteDecorator api没有带有您签名的方法。如果它是 strictMatching,则必须传递一个 boolean 值作为参数。

AutoCompleteDecorator.decorate(jTextArea1, list,true);

关于java - JFrame 中的自动完成装饰器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22938995/

相关文章:

java - hibernate - 无法更新嵌入式集

java - 时间序列数据 - 计算两组的出现次数

java - 单击 JButton Java 时更改字体样式

Java:向 ChangeEvent 添加文本字段

java - 将 JGoodies Panel 的最大宽度设置为 JScrollPane 大小

java - JFreeChart XYLineChart 将节点形状自定义为环

java - 从 youtube channel 获取视频列表

java - 无法理解滚动面板

java - DigitalOcean Tomcat 设置

java - 如何使用另一个 JFrame 中的数据更新 JFrame?