Java 大于或等于字符串变量 public Component prepareRenderer(TableCellRenderer渲染器,int行,int列) { 组件c=super.prepareRenderer(呈现器、行、列); c、 挫折背景(getBackground()); int modelRow=convertRowIndexToModel(行); 字符串值=(字符串)getModel().getValueAt(modelRow,7); 如果(值

Java 大于或等于字符串变量 public Component prepareRenderer(TableCellRenderer渲染器,int行,int列) { 组件c=super.prepareRenderer(呈现器、行、列); c、 挫折背景(getBackground()); int modelRow=convertRowIndexToModel(行); 字符串值=(字符串)getModel().getValueAt(modelRow,7); 如果(值,java,swing,if-statement,Java,Swing,If Statement,我认为您正在寻找: int-Value=Integer.parseInt((字符串)getModel().getValueAt(modelRow,7)); // ^^^ ^^^^^^^^^^^^^^^^^ ^ 如果(值你可以像- int Value = Integer.parseInt((String)getModel().getValueAt(modelRow, 7)); // ^^^

我认为您正在寻找:

int-Value=Integer.parseInt((字符串)getModel().getValueAt(modelRow,7));
//  ^^^         ^^^^^^^^^^^^^^^^^                                          ^
如果(值你可以像-

    int Value = Integer.parseInt((String)getModel().getValueAt(modelRow, 7));
//  ^^^         ^^^^^^^^^^^^^^^^^                                          ^
    if (Value <= 30) c.setBackground(Color.GREEN);

如果(Integer.parseInt(value))不需要重写
prepareRenderer
,您只需提供一个能够满足您需要的自定义渲染器,或者使用类似SwingLabs、SwingX库(和
JXTable
)的突出显示支持即可抱歉错过了…抱歉疯了你能举个例子吗?@Xyryle Buen 1.使用
prepareRenderer
2.你必须将
number
放入
model
或移除对
String
-
String Value=(String)
3.并重写
getColumnClass
(这里有很多次)@XyryleBuen:然后需要添加一个
null
检查,作为
(String)getModel().getValueAt(modelRow,7)
正在返回
null
。很抱歉,我已经通过更改数据库中的数据类型来修复了它。顺便问一下,我如何检查它是否为null?@xyrelebuen:
thingToCheck==null
@T.J.Crowder
我想你正在寻找
-将数字输入模型,但可能有数字
字符串值-
(字符串)getModel().getValueAt(modelRow,7);`,没有人知道,这只是为什么这里是(可能是)MCVE/SSCCE标准的另一个原因:-)
    int Value = Integer.parseInt((String)getModel().getValueAt(modelRow, 7));
//  ^^^         ^^^^^^^^^^^^^^^^^                                          ^
    if (Value <= 30) c.setBackground(Color.GREEN);
if(Integer.parseInt(value)<=30){c.setBackground(Color.Green)}