Swing中JComboBox如果获取数据库值求详细代码。刚接触Swing
第一次发帖。不知道规矩。
如题 讲项目类型做成下拉选项。选项里的值是model里的procode
不知道这个控件该怎么赋值。
JLabel applicationStaffField = new JLabel(applyModel.getApplicationStaff());
JLabel applicationDepartmentField =new JLabel(applyModel.getApplicationDepartment());
JLabel expensesNetureField =new JLabel(applyModel.getExpensesNeture());
这是label的赋值方法。
------解决方案--------------------
举个例子吧,比如我们的type实体类叫ViewType,只有两个属性,为了再下拉框中放入ViewType时能显示的是typeName,我们必须重写该类的toString()方法:
public class ViewType {
private String typeName;
private String proCode;
public String getProCode() {
return proCode;
}
public void setProCode(String proCode) {
this.proCode = proCode;
}
public String getTypeName() {
return typeName;
}
public void setTypeName(String typeName) {
this.typeName = typeName;
}
public String toString(){
return this.typeName;
}
}
接着,我们在获取到一个ViewType类的list后,可循环将List中的ViewType放到下拉框中,假设你的下拉框变量是comboBox:
for(ViewType v:list){
comboBox.addItem(v);
}
这样就将下拉框初始化好了,那我们怎么获取选择中的ViewType的procede呢?看下面:
Object c = comboBox.getSelectedItem(); //首先获取被选中的项
String proCode = ((ViewType)c).getProCode();//强制转换为ViewType后取得procode
基本上就是这样了