eav*_*eav 2 java swing jcombobox
我有一个非常类似的问题,就像这个Java ComboBox不同的名称值
我已经更改了代码,所以我会得到一个Employee-Object(我改变了我的类名,因为上面链接中的类名是Employee).
就我而言,我已经有了一个toString()方法,我不想覆盖它.(我需要它在其他地方)
但我不想toString()在我的方法中使用这种方法JCombobox.但它确实是自动的.
我不想回复任何字符串!我需要这些物品.
在创建JCombobox时toString(),有没有办法说"采取另一种方法,让我们说toStringDifferent()"?
this.comboEmployees = new JComboBox(new EmployeeComboboxModel(getEmployees()));
// this will give me the toString-method's return-value of the Employee object.
// But i want the toStringDifferent() method's result.
Run Code Online (Sandbox Code Playgroud)
谢谢!
事实上,甚至认为不使用也是不错的做法toString.
comboEmployees.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list,
Object value,
int index,
boolean isSelected,
boolean cellHasFocus) {
Employee employee = (Employee)value;
value = employee.toStringDifferent();
return super.getListCellRendererComponent(list, value,
index, isSelected, csellHasFocus);
}
});
Run Code Online (Sandbox Code Playgroud)