gpt4 book ai didi

java - 为 JXTable 中的一些行着色

转载 作者:行者123 更新时间:2023-11-30 07:01:25 25 4
gpt4 key购买 nike

我在对列进行排序后为某些行着色时遇到问题。我想为第 4 列等于零的每一行着色。这样我就重写了 prepareRenderer() 方法,如下所示:

public Component prepareRenderer(TableCellRenderer renderer, int row, int column) {
Component comp = super.prepareRenderer(renderer, row, column);
int modelRow = convertRowIndexToModel(row);
int modelColumn = convertColumnIndexToModel(column);
double d = (double) getModel().getValueAt(row, 4);
if(d <= 1e-4){
comp.setForeground(Color.RED);
}else{
comp.setForeground(Color.BLACK);
}
return comp;
}

它工作正常。 (第 1、2 和 15 行颜色为红色) enter image description here

但是在对某些列进行排序后,该行索引没有改变。(第 1、2 和 15 行再次变为红色) enter image description here如何解决?

最佳答案

double d = (double) getModel().getValueAt(row, 4);

模型中的数据永远不会排序,因此您需要使用:

double d = (double) getModel().getValueAt(modelRow, 4);

关于java - 为 JXTable 中的一些行着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29868907/

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