有没有办法使用Java JTable
组件按列标题确定列名? E.G.,我可以有像“Header”和列名“Column”这样的列标题。我正在寻找像Column_Name_From_Header(“Header”) - >这样的方法。 “列”。
答案 0 :(得分:3)
如果你有JTable
的引用,那么获取列名的最简单方法是从基础TableModel
获取它; e.g。
JTable tbl = ...
String colName = tbl.getModel().getColumnName(10);
这通常是理想的,因为使用模型索引而不是查看索引来完成访问。这意味着,例如,如果您使用JTable的列,模型中的列名仍将具有相同的可预测顺序。
答案 1 :(得分:1)
遍历表格列模型的表格列。找到具有给定标头值的那个(使用headerValue.equals(tableColumn.getHeaderValue()
)。然后询问列modelIndex
的{{1}},并在表的模型中询问此索引的列名:tableColumn.getModelIndex()
。