如何在JAVA GUI中创建类似于Google搜索样式的搜索栏

时间:2014-10-24 14:56:49

标签: java swing search user-interface searchbar

我正在尝试在我的程序中创建类似于谷歌搜索栏的搜索功能,当用户输入时,它实际上搜索数据库并在JTextField下方的弹出列表中显示当前结果。我是java GUI编程的新手,因此我不清楚所有java组件,因此很难找到满足我需要的合适组件,尤其是我需要用于文本字段下方弹出下拉列表的组件。我希望有些专家能给我一些见解。

1 个答案:

答案 0 :(得分:5)

SwingX API有助于解决此问题。您可以使用以下代码为可编辑的ComboBox实现自动完成功能。

import javax.swing.*;
import org.jdesktop.swingx.autocomplete.AutoCompleteDecorator;
import java.awt.*;
public class Demo {

    JFrame frame = new JFrame("");
    AutoCompleteDecorator decorator;
    JComboBox combobox;

    public Demo() {
        combobox = new JComboBox(new Object[]{"","Ester", "Jordi",
            "Jordina", "Jorge", "Sergi"});
        AutoCompleteDecorator.decorate(combobox);
        frame.setSize(400,400);
        frame.setLocationRelativeTo(null);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setLayout(new FlowLayout());

        frame.add(combobox);
        frame.setVisible(true);
    }

    public static void main(String[] args) {
        Demo d = new Demo();
    }
}