我正在制作一个Java桌面应用程序。在我的应用程序中,我使用的是JCombobox。这是一个例子:
我没有写JCombobox
的任何内容。但是,可以从JComboBox
看到第一部电影的名字。
此外,Application接受来自用户的输入,并根据该输入,向JCombobox
写一些内容。
public class Searchbar extends JComboBox
{
// PROPERTIES
AutoCompleteDecorator decorator;
private final ArrayList<Movie> movies;
private final DBConnectMovie movieConnection = new DBConnectMovie();
private final int totalCount = movieConnection.getTotalMovieCount();
private String item;
// CONSTRUCTOR
public Searchbar()
{
movies = movieConnection.getAllMovies();
this.insertItemAt("", 0);
this.setModel(new DefaultComboBoxModel(movies.toArray()));
AutoCompleteDecorator.decorate(this);
this.setPreferredSize(new Dimension(500, 40));
item = this.getEditor().getItem().toString();
}
// METHODS
public void changeComboBoxText()
{
System.out.println("Prints this out");
this.getEditor().setItem("C");
}
}
我可以在changeComboBox
方法中打印出文本。但是,我无法更改JComboBox
的文字。
祝你有个美好的一天,谢谢!
答案 0 :(得分:1)
更改组合:
一个。更新movies
b.use this.setModel(new DefaultComboBoxModel(movies.toArray()));