Ae galera estou tentando fazer um JComboBox de cores onde a cor q eu escolhe preenche a celula da minha JTable mas esta ocorrendo o seguinte o combo consegui fazer as opçoes de cores…ja adicionei ele na minha JTable, mas depois q escolho a cor ele preenche minha célula assim java.awt.Color[r=200,g=100,b=0] por exemplo, nao aparece a cor, segue a baixo os codigos
[code]public class frmHora extends JFrame{
public frmHora() throws java.text.ParseException {
super(“Exemplo de uma tabela com celulas hora formatados”);
MaskFormatter celulaHora = null;
JFormattedTextField jftf;
// colunas da tabela
String[] colunas = {"Nome", "Idade", "Sexo"};
// conteúdo da tabela
Object[][] conteudo = {
{"", "", ""},
{"", "", ""},
{"", "", ""},
{"", "", ""}
};
// constrói a tabela
JTable tabela = new JTable(conteudo, colunas);
// quero colorir o fundo das células da segunda coluna
// se o valor encontrado for menor que 20
// TableCellRenderer tcr2 = new Colorir2();
TableCellRenderer tcr = new Colorir();
TableColumn column = tabela.getColumnModel().getColumn(1);
// TableColumn column2 = tabela.getColumnModel().getColumn(2);
column.setCellRenderer(tcr);
tabela.setPreferredScrollableViewportSize(new
Dimension(350, 50));
Container c = getContentPane();
c.setLayout(new FlowLayout());
JScrollPane scrollPane = new JScrollPane(tabela);
c.add(scrollPane);
/************ FORMATA A CÉLULA DESEJADA DA TABELA ***************/
try {
celulaHora = new MaskFormatter("##:##");
celulaHora.setPlaceholderCharacter('_');
} catch (ParseException e) {
e.printStackTrace();
}
// Jogando a máscara no JFTF
jftf = new JFormattedTextField(celulaHora);
TableColumn col = tabela.getColumnModel().getColumn(1);
col.setCellEditor(new DefaultCellEditor(jftf));
/*********** NA COLUNA É ADICIONADA COMBOBOX *****************/
//Set up the editor for the sport cells.
JComboBox tipoBox = new JComboBox();
tipoBox.addItem(Color.BLACK);
tipoBox.addItem(Color.YELLOW);
tipoBox.addItem(Color.CYAN);
tipoBox.addItem(Color.ORANGE);
tipoBox.addItem(Color.BLUE);
tipoBox.setRenderer(new ColorComboRenderer());
TableColumn col2 = tabela.getColumnModel().getColumn(2);
col2.setCellRenderer(new AuxiliarTableRenderer());
//Set up tool tips for the sport cells.
/*AuxiliarTableRenderer renderer = new AuxiliarTableRenderer();
renderer.setToolTipText("Escolha o tipo de horário");
col2.setCellRenderer(renderer);*/
setSize(600, 300);
setVisible(true);
}[/code]
e a classe AuxiliarTableRenderer
[code]public class AuxiliarTableRenderer extends JButton implements TableCellRenderer {
@Override
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
Color color = (Color) value;
if (color != null) {
setBackground(color);
return this;
}
return null;
}
}[/code]
alguem pode me ajudar no q estou fazendo errado, ou deixando de fazer.
Obrigado.