繁体   English   中英

如何在jtable行中插入jcombobox以获取多个值

[英]How to insert a jcombobox in a jtable row for multiple values

Hashmap包含键和值(解析XML的结果)。 Hashmap包含以下内容:键是字符串,值是向量。 键可以在向量中具有单个值,也可以在向量中具有多个值。 必须将此哈希图放入jtable中,以便如果键具有单个值,则将其放入文本框。 如果它具有多个值,请在表中插入一个组合框。

您可以更改代码。

hashmap.put(nodeList.item(j).getNodeName(), nodeValueList);
Set keys = PropertyIMPL.hashmap.keySet();
Iterator iteratorKeys = keys.iterator();

while (iteratorKeys.hasNext()) {
    String key = (String) iteratorKeys.next();
    if (nodeValueList.size() > 1) {
        tablemodel.insertRow(0, new Object[]{key});
        String[] ss = (String[]) nodeValueList.toArray(
            new String[nodeValueList.size()]);
        TableColumn col = table.getColumnModel().getColumn(1);
        col.setCellEditor(new MyComboBoxEditor(ss));
    } else {
        tablemodel.insertRow(0, new Object[]{key, nodeValueList});
    }
}

keys.clear();

简短的答案是您需要重写JTable的getCellEditor(...)方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM