Colorir de Verde a Coluna que tiver o menor valor Double

3 respostas
R

Como faria para colorir de Verde a Coluna que tiver o menor valor Double da linha?
Sendo que essas colunas jah tem um Renderer e um Editor próprios para o usuário alterar o valor de compra…
Obrigado

3 Respostas

L

Se puder postar o codigo onde preenche a model…!

R
class ModeloOrcamento extends AbstractTableModel{
		/**
		 * 
		 */
		private static final long serialVersionUID = 1L;
		private ArrayList<Linha> linhas = new ArrayList<Linha>();
		private List<String> colunas = new ArrayList<String>();
		
		public ModeloOrcamento(){
			this.addTableModelListener(new MyTableModelListener(tabelaOrcamento));
			colunas.add("Peça");
			for (int i=0;i<fornecedores.size();i++) {  
				colunas.add("Marcas");
				colunas.add("Preço");
				colunas.add("Comprar");
			}
			
		}
		public void add(Object[] linha){
			linhas.add(new Linha(linha));  
		}
		public int getColumnCount(){
		    return colunas.size();
		}

		public int getRowCount(){
			return linhas.size();
		}

		public String getColumnName(int col){
		    return colunas.get(col);
		}

		  public Object getValueAt(int row, int col){
			return ((Linha)linhas.get(row)).getCelula(col);  
		  }

		  @SuppressWarnings("unchecked")
		public Class getColumnClass(int c){
		    return getValueAt(0, c).getClass();
		 }

		  public boolean isCellEditable(int row, int col) {
			  if (row == linhas.size() -1 && col != 0) return false;  
			  else return true; 
		  }

		  public void setValueAt(Object value, int row, int col) {
			((Linha)linhas.get(row)).setCelula(value, col); 
		    fireTableCellUpdated(row, col);
		  }
		
	}
	private ModeloOrcamento modelOrcamento;
	
	private JXTable getTabelaOrcamento() {
		if (tabelaOrcamento == null) {
			tabelaOrcamento = new JXTable();
			tabelaOrcamento.setSelectionMode(0);

			tabelaOrcamento.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
			tabelaOrcamento.setHorizontalScrollEnabled(true);
			tabelaOrcamento.setColumnModel(new GroupableTableColumnModelFornecedor());
	        tabelaOrcamento.setTableHeader(new GroupableTableHeaderFornecedor((GroupableTableColumnModelFornecedor)tabelaOrcamento.getColumnModel()));
	        tabelaOrcamento.setModel(modelOrcamento);
	        tabelaOrcamento.setRowHeight(20);
	        GroupableTableHeaderFornecedor header = (GroupableTableHeaderFornecedor)tabelaOrcamento.getTableHeader();
			GroupableTableColumnModelFornecedor cm = (GroupableTableColumnModelFornecedor)tabelaOrcamento.getColumnModel();
			
			TableColumn coluna2 = tabelaOrcamento.getColumn(0);
			coluna2.setHeaderValue("Peça");
			coluna2.setCellRenderer(new PecaTableCellRenderer());
			
			
			int i =1;
			DecimalColumnFormat decimal = new DecimalColumnFormat();
			for(Fornecedor fornecedor : fornecedores){
				ColumnGroupFornecedor grupo = new ColumnGroupFornecedor(new GroupableTableCellRenderer(),fornecedor);
				
				TableColumn codigos = tabelaOrcamento.getColumn(i);
				codigos.setHeaderValue("Marcas");
				codigos.setCellEditor(new ComboEditor());
				codigos.setCellRenderer(new ComboRenderer());
				    
				//tabelaOrcamento.setDefaultEditor(JComboBox.class, new ComboEditor());   
				i++;
				
				grupo.add(codigos);
				
				TableColumn preco = tabelaOrcamento.getColumn(i);
				preco.setHeaderValue("Preço");
				preco.setPreferredWidth(50);
				preco.setCellRenderer(decimal.getRenderer());
				preco.setCellEditor(decimal.getEditor());
				i++;
				
				grupo.add(preco);
				
				TableColumn assinalar = tabelaOrcamento.getColumn(i);
				assinalar.setHeaderValue("Comprar?");
				assinalar.setPreferredWidth(50);
				i++;
				
				grupo.add(assinalar);
				
				cm.addColumnGroup(grupo);
			}
			header.setDefaultRenderer(new GroupableTableCellRenderer());
			
			
		}
		return tabelaOrcamento;
	}
R

Ninguem?

Criado 25 de janeiro de 2008
Ultima resposta 30 de jan. de 2008
Respostas 3
Participantes 2