我的应用程序中有一个组合框,它选择从数据库中提取的数据,但问题是我需要让组合框选择多个值。
我在stackoverflow上查看了这个问题 Selecting multiple items from combobox
考虑评论我已将应用程序更改为使用ControlsFX的java8和checkedCombobox。
但是如何实现这个组合框中的keyvalue对关联是可能的。 因为我们可以在正常的组合框中使用setCellfactory。
我检查过的ComboBox
类
/*
Added for Application Lov
*/
package businesstier;
/**
*
* @author rahul_singh41
*/
public class KeyValuePair {
private final String key;
private final String value;
public String getKey() {
return key;
}
public String getValue() {
return value;
}
public KeyValuePair(String key, String value) {
this.key = key;
this.value = value;
}
@Override
public String toString() {
return key;
}
}
方法
public static ObservableList<KeyValuePair> getKeyValue(Connection conFrom) throws SQLException{
ObservableList<KeyValuePair> data = FXCollections.observableArrayList();
//data.add(new KeyValuePair("Select Application Name", null));
KeyValuePair keyValuePair;
String query = "select application_name,application_id from apps.fnd_application_vl";
PreparedStatement ps = null;
ResultSet rs = null;
ps = conFrom.prepareStatement(query);
rs = ps.executeQuery();
while(rs.next()){
//System.out.println("Key"+rs.getString(1)+"value"+rs.getString(2));
keyValuePair = new KeyValuePair(rs.getString(1), rs.getString(2));
data.add(keyValuePair);
}
//System.out.println("KeyValue pair"+data);
return data;
}
@FXML
private CheckComboBox<KeyValuePair> applicationCombo = new CheckComboBox<KeyValuePair>();
applicationCombo.getItems().addAll((AOLMethods.getKeyValue(connFrom)));