Tabelas em JAVA

1 resposta
java
T

Oi,
MINHA DUVIDA É COMO FAÇO PARA CENTRALIZAR O TEXTO PUXADO DO BANCO DE DADOS NA MINHA CÉLULA(TUPLICA) DA TABELA?

Preenchi uma tabela com informaçoes de um banco de dados com este código

public void preencherTabela(String SQL) {
ArrayList dados = new ArrayList();

String[] Colunas = new String[]{"NOME", "E-MAIL", "RAMAL"};

    conecta.executaSQL(SQL);
    try {
        conecta.rs.first();
        do {
            dados.add(new Object[]{conecta.rs.getString("nomeColaborador"), conecta.rs.getString("email"), conecta.rs.getInt("ramal")});
        } while (conecta.rs.next());

    } catch (SQLException ex) {
        JOptionPane.showMessageDialog(null, "Erro ao preencher o ArrayList!\nERRo" + ex);
    }

    ModeloTabela modelo = new ModeloTabela(dados, Colunas);
    
    jTable1.setModel(modelo);
    jTable1.getColumnModel().getColumn(0).setPreferredWidth(65);
    jTable1.getColumnModel().getColumn(0).setResizable(false);
    jTable1.getColumnModel().getColumn(1).setPreferredWidth(220);
    jTable1.getColumnModel().getColumn(1).setResizable(false);
    jTable1.getColumnModel().getColumn(2).setPreferredWidth(65);
    jTable1.getColumnModel().getColumn(2).setResizable(false);
    jTable1.getTableHeader().setReorderingAllowed(false);
    jTable1.setAutoResizeMode(jTable1.AUTO_RESIZE_OFF);
    jTable1.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    
            
            
}

estou modelando os parâmetros dela através dessa classe

public class ModeloTabela extends AbstractTableModel{

private ArrayList linhas = null;

private String[] colunas = null;
public ModeloTabela(ArrayList lin, String[] col){
       setLinhas(lin);
       setColunas(col);
   }
   
   public ArrayList getLinhas(){
       return linhas;
   }
   public void setLinhas(ArrayList dados){
       linhas = dados;
   }
   public String[] getColunas(){
       return colunas;
   }
   public void setColunas(String[] nomes){
       colunas = nomes;
   }
   
   public int getColumnCount(){
       return colunas.length;
   }
   public int getRowCount(){
       return linhas.size();
   }
   public String getColumnName(int numCol){
       return colunas[numCol];
   }
   
   public Object getValueAt(int numLin, int numCol){
       Object[] linha = (Object[])getLinhas().get(numLin);
       return linha[numCol];
   }
   
}

MINHA DUVIDA É COMO FAÇO PARA CENTRALIZAR O TEXTO PUXADO DO BANCO DE DADOS NA MINHA CÉLULA(TUPLICA) DA TABELA?:

1 Resposta

S

achei algo que pode te ajudar : JTable - Centralizar o conteúdo de uma célula

estive utilizando JTable recentemente em uma aplicação aqui para minha família que cuida da contabilidade, essa resolução parece funcionar!

public class CellRenderer extends DefaultTableCellRenderer {

/**

*

*/

private static final long	serialVersionUID	= 1L;

public CellRenderer()

{

super();

}

public Component getTableCellRendererComponent(JTable table, Object value,

boolean isSelected, boolean hasFocus, int row, int column) {

this.setHorizontalAlignment(CENTER);

return super.getTableCellRendererComponent(table, value, isSelected,

hasFocus, row, column);

}

}
// Cria a tabela.	 		

io_tb_tabela = new JTable();

io_tb_tabela.setDefaultRenderer(Object.class, new CellRenderer());

assim vc bota um padrão para centralizar todo conteúdo inclusive o texto

Criado 5 de maio de 2016
Ultima resposta 5 de mai. de 2016
Respostas 1
Participantes 2