亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何根據條件更改線條的顏色?

如何根據條件更改線條的顏色?

慕婉清6462132 2023-02-23 17:04:32
我的表看起來像這樣,一切正常,一切正常)我需要如果滿足條件 ARRIVAL = 0 或 DEPART = 0,則整行中的文本顏色為不同的顏色,例如紅色或黑色,沒關系,我不知道如何更改它,也許這很容易,我是新手)我還沒有在其他問題中找到這個問題的答案 private void setTableSettingsReport() {    jTblReport.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);    jTblReport.setRowSelectionAllowed(true);    jTblReport.setAutoCreateRowSorter(true);    jTblReport.getTableHeader().setReorderingAllowed(false);    String[] dbColNames = new String[13];    dbColNames[0] = "ID";    dbColNames[1] = "Имя";    dbColNames[2] = "Фамилия";    dbColNames[3] = "Отчество";    dbColNames[4] = "Дата прихода с ";    dbColNames[5] = "Дата прихода до";    dbColNames[6] = "Прибытие";    dbColNames[7] = "Дата ухода с ";    dbColNames[8] = "Дата ухода до";    dbColNames[9] = "Убытие";    dbColNames[10] = "Причина опоздания";    dbColNames[11] = "Причина раннего ухода";    dbColNames[12] = "ID лица";    // dbColNames[8] = "Дата начала";    //  dbColNames[9] = "Дата окончания";        tm.setColumnIdentifiers(dbColNames);    jTblReport.setModel(tm);    jTblReport.setSelectionForeground(Color.white);}dbColNames[6] = "Прибытие"; dbColNames[9] = "Убытие"; 這些是相同的字段,具體取決于您需要更改整條線的顏色
查看完整描述

1 回答

?
楊__羊羊

TA貢獻1943條經驗 獲得超7個贊

您需要為此 JTable 設置自己的單元格渲染器(我假設您使用的是 JTable)。


public class MyCellRenderer extends DefaultTableCellRenderer{

private int columNum = 0;


public MyCellRenderer(int columNum) {

    // TODO Auto-generated constructor stub

    this.columNum = columNum;

}


@Override

public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus,

        int row, int column) {

    // TODO Auto-generated method stub

    Object object = table.getValueAt(row, this.columNum);


    if(object.equals("yourValue")) {

        setBackground(Color.RED);

    }

    return this;

}

}


并且您需要在創建后立即將此渲染器設置為您的 jtable。


jTabReport.setDefaultRenderer(Object.class, new MyCellRenderer(3));

為此,您創建一個這樣的類并從 DefaultTableCellRenderer 擴展并覆蓋 getTableCellRendererComponent。構造函數獲得了存儲“arival”信息的列號。對于行中的每個單元格,您檢查指定的列是否包含 arival = 0(這必須始終是相同的列)。如果是這樣設置背景。“yourValue”只是一個例子。


查看完整回答
反對 回復 2023-02-23
  • 1 回答
  • 0 關注
  • 84 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號