Como faço cellRenderer no Netbeans 6.5

Ae galera gostaria de entender como eu mudo o modelo da minha JTable no netbeans…preciso mudar a fonte, cor, etc…de uma celula q eu clicar…ja intendi q eu preciso mudar o modelo de minha JTable mas oq eu nao intendo eh como fazer isso no nebeans pois ele cria a JTable e trava o codigo

como eu faço isso usando NetBeans??

http://java.sun.com/docs/books/tutorial/uiswing/components/table.html#renderer

Olá furacao123, pelo que eu saiba o netbeans não dá suporte para manipulação de renderers. Você terá que fazer as implementações na codificação - O que não é difícil. :slight_smile: Abraço.

eu testei todos os exemplos desse link da sun…consegui fazer funcionar…eu pensei em fazer na unha mesmo usando o netbeans, mas me explica uma coisa q ainda to confuso…eu to acostumado em tarbalhar com tabelas simples no DefaultTableModel mesmo…e pelo q vejo esses exemplos da sun eu vou ter q fazer uma classe com o modelo da minha tabela pra depois usala??

Eu sempre utilizo assim… Crio uma classe “tabela” e dentro dela eu crio a classe “Modelo” e as classes de renders… mas pode se fazer de varias formas…

teria como me mostrar um exemplo modelo e renders soh pra mim intender melhor??

é q eu sempre usei o Default pra trabalhar com banco, etc.

Obrigado.

Segue minha classe de formato de célula. Nela eu só centralizo o texto, defino a fonte e o texto da célula quando passo o mouse em cima. Só os 3 primeiros métodos que eu editei, o resto é padrão do implements da classe.

package services;

import java.awt.Color;
import java.awt.Component;
import java.awt.Font;
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.TableCellRenderer;

 public class FormatoCelula extends DefaultTableCellRenderer implements TableCellRenderer {  
   
     public FormatoCelula() {  
         super();  
     }  
   
     @Override  
     public void setHorizontalAlignment(int alignment) {  
         super.setHorizontalAlignment(alignment);  
     }  
     
     @Override
     public void setToolTipText (String text) {
        super.setToolTipText(text);
     }
     
     @Override
     public void setFont(Font fonte) {
        super.setFont(fonte);
     }          
       
     @Override  
     public Component getTableCellRendererComponent(JTable table, Object value,  
             boolean isSelected, boolean hasFocus, int row, int column) {  
         Component renderer = super.getTableCellRendererComponent(  
                 table, value, isSelected, hasFocus, row, column);  
          
         return renderer;  
     }  
   
     @Override  
     public void validate() {  
     }  
   
     @Override  
     public void revalidate() {  
     }  
   
     @Override  
     protected void firePropertyChange(String propertyName, Object oldValue, Object newValue) {  
     }  
   
     @Override  
     public void firePropertyChange(String propertyName, boolean oldValue, boolean newValue) {  
     }  
 }


// ---------------- Configurando um formato a partir do meu formato definido

FormatoCelula c = new FormatoCelula();

// Defino a fonte e o alinhamento
c.setFont(new Font("Arial", Font.PLAIN , 12));
c.setHorizontalAlignment(SwingConstants.LEFT);

// Defino o texto das celulas da coluna 1
c.setToolTipText("Nome do usuário cadastrado.");
tabela.getColumnModel().getColumn(1).setCellRenderer(c);

// Defino o texto das celulas da coluna 2
c.setToolTipText("Login do usuário cadastrado.");
tabela.getColumnModel().getColumn(2).setCellRenderer(c);

Lembre-se de fazer isso no pós-inicialização da sua tabela, senão a alteração não aparecerá. Para isso, vá em propriedades da sua tabela, na aba código, edite a propriedade “Código de pós-inicialização”.

Espero ter ajudado.

[quote=geidivan]
Lembre-se de fazer isso no pós-inicialização da sua tabela, senão a alteração não aparecerá. Para isso, vá em propriedades da sua tabela, na aba código, edite a propriedade “Código de pós-inicialização”.

Espero ter ajudado.[/quote]

Não intendi essa parte oq eu tenho q editar no pós inicialização?

ele esta em branco

Exato. Está em branco, é aí que você vai inserir essa configuração do formato, a segunda parte do código que te passei.

eu adicionei mas nao mostrou atualização nehuma

adicionei uma JTable pelo visual do netbeans mesmo e no codigo de pos inicializacao coloquei a 2 parte do codigo