我有一个表,目前有 11 列。 随着程序的发展,我发现自己需要添加更多列。
我这样做的问题是,如果我在位置 5 添加一个新列,我需要更改在第 6、7、8 列等中设置数据的代码。
我这样设置列标题:
String[] titles = { "Date", "Condition", "Weight", "Pos", "Distance",
"Margin", "Time", "200m", "PIR", "Jockey", "Track" };
for (int i = 0; i < titles.length; i++) {
TableColumn column = new TableColumn(table, SWT.NONE);
column.setText(titles[i]);
}
所以现在我在做:
item.setText(0, meetingDate[i]);
item.setText(1, trackCondition[i]);
item.setText(2, weight[i]);
item.setText(3, position[i]);
我想做的是这样的:
item.setText(colMeetingdate, meetingDate[i]);
item.setText(colTrackCond, trackCondition[i]);
item.setText(colWeight, weight[i]);
item.setText(colPos, position[i]);
是否有一种标准的方式来命名/引用列?
最佳答案
没有内置的方法可以做到这一点。我能想到的最简单的解决方案是将您的列标题保留在 List
中(我们称之为 tableHeaders
)并根据需要插入/删除。
要获取索引,只需执行以下操作:
int index = tableHeaders.indexOf("headerString");
if(index != -1)
item.setText(index, blabla[i]);
此解决方案假定用户无法对您的表格列重新排序。
关于java - 按标题引用列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25201285/