gpt4 book ai didi

java - 如何在Jtable中制作多行单元格

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:17:46 26 4
gpt4 key购买 nike

我想知道是否可以使用 Java Swing 在表格中执行此操作。

Image for Example

我正在使用 Vector<Vector<String>> 处理表格用于在 DefaultTableModel 对象中传递每一列数据,但为此我不知道我必须使用什么。

注意:表格数据是在运行时动态添加的。

最佳答案

您必须将自定义的TabelCellRendererJList View 一起使用。以下代码应该可以工作。

public class VectorTableCellRenderer extends JList<String> implements TableCellRenderer {

@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
if (value instanceof Vector) {
setListData((Vector) value);
}

if (isSelected) {
setBackground(UIManager.getColor("Table.selectionBackground"));
} else {
setBackground(UIManager.getColor("Table.background"));
}

return this;
}
}

编辑:如何使用 VectorTableCellRenderer

    VectorTableCellRenderer renderer = new VectorTableCellRenderer();

//set TableCellRenderer into a specified JTable column class
table.setDefaultRenderer(Vector.class, renderer);

//or, set TableCellRenderer into a specified JTable column
table.getColumnModel().getColumn(columnIndex).setCellRenderer(renderer);

这是我的测试输出。

enter image description here

关于java - 如何在Jtable中制作多行单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32775189/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com