A类主要包含class A {
String name;
String getName() {return name;}
void setName(String name) {this.name = name;}
String toString() {
return getName();
}
}继承的子类利用了父类的toString()方法,这样JComboBox显示的下拉列表就是每个类的名字。
String name;
String getName() {return name;}
void setName(String name) {this.name = name;}
String toString() {
return getName();
}
}继承的子类利用了父类的toString()方法,这样JComboBox显示的下拉列表就是每个类的名字。
还有一些其他的方法,但是和JComboBox无关啊,而且不要太多哦。
对了 class A implements java.io.ExternalSerializable
class model extends ComboBoxModel{
......
}
class A extends JComponent{
......}
class A1 extends A{}
class A2 extends A{}
class A3 extends A{}
JComboBox jcb=new JComboBox();
jcb.addItem(A1);
jcb.addItem(A2);
jcb.addItem(A3);
jcb.setModel(model);
OK?
public class JComboBox extends JComponent {
protected ComboBoxModel dataModel;
public JComboBox(ComboBoxModel aModel) {
super();
setModel(aModel);
init();
}
/**
* Creates a <code>JComboBox</code> with a default data model.
* The default data model is an empty list of objects.
* Use <code>addItem</code> to add items. By default the first item
* in the data model becomes selected.
*
* @see DefaultComboBoxModel
*/
public JComboBox(final Object items[]) {
super();
setModel(new DefaultComboBoxModel(items));
init();
}
public void addItem(Object anObject) {
checkMutableComboBoxModel();
((MutableComboBoxModel)dataModel).addElement(anObject);
}
}
可以发现这个JComboBox本身就是使用DefaultComboBoxModel类来管理数据的。
请说明我的问题的症结所在,谢谢!