Jtable não mostra título da coluna

2 respostas
C

o jtable funciona perfeito, mas não mostra o título da coluna. o trecho do código é o seguinte:

public class CisalhamentoDireto implements TableModelListener

{

static final int numLinhas = 24;

int numTabbed = 0;

int totalLinhasUsadas = 0;
static JanelaInterna novoCisalhamentoDireto;

ModeloTabela modelo;

JTable tabelaDados;

static TabbedPane tabbed;

Object dados[][];
String nomesColunas[] = { “Vertical(lv)”, “Horizontal(lh)”, “Mola(lm)”, “%”, “(cm3)”, “(kgf)”, “(kgf/cm2)” };

public CisalhamentoDireto( JDesktopPane desktop, int numeroCisalhamento )

{

dados = new Object[ numLinhas ][ nomesColunas.length ];
modelo = new ModeloTabela();
tabelaDados = new JTable( dados, nomesColunas );
tabelaDados.setModel( modelo );
tabelaDados.setCellSelectionEnabled( true );

}
}

2 Respostas

H

Para que o titulo da coluna apareça é necessário colocá-lo dentro de um componente JScrollPane, tipo assim:

import javax.swing.*;
import java.awt.*;

public class teste extends JFrame {
	public teste() {
		super("Teste");
		setSize(600,600);
		JTable t = new JTable(new Object [] [] {}, new String [] {"Nome","Fone"});
		t.setPreferredScrollableViewportSize(new Dimension(600, 400));
		JScrollPane s = new JScrollPane(t);
		getContentPane().setLayout(new BorderLayout());
		getContentPane().add(s,BorderLayout.CENTER);
	}

        public static void main (String [] args) {
                new teste().show();
        }
}

Espero ter sido útil.
:smiley:

C

o que vc mandou funcionou, mas meu código nao funciona, se vc ver algum erro no código me avise. aqui esta a parte do código (o resto funciona normal):

import javax.swing.<em>;

import java.awt.</em>;

import javax.swing.table.<em>;

import javax.swing.event.</em>;
public class CisalhamentoDireto implements TableModelListener

{

static final int numLinhas = 24;

int numTabbed = 0;

int totalLinhasUsadas = 0;
JanelaInterna novoCisalhamentoDireto;

ModeloTabela modelo;

JTable tabelaDados;

static TabbedPane tabbed;

Object dados[][];

public CisalhamentoDireto( JDesktopPane desktop, int numeroCisalhamento )

{

dados = new Object[ numLinhas ][ 7 ];
numeroCisalhamento++;
novoCisalhamentoDireto = new JanelaInterna( "CisalhamentoDireto" + numeroCisalhamento );
novoCisalhamentoDireto.setResizable( false );
novoCisalhamentoDireto.setSize( 1000,600 );

modelo = new ModeloTabela();
tabelaDados = new JTable( dados, new String[] { "Vertical lv", "Horizontal lh", "Mola lm", "%", "cm3", "kgf", "kgf cm2" });
tabelaDados.setModel( modelo );
tabelaDados.setCellSelectionEnabled( true );

modelo.addTableModelListener( this );	

tabelaDados.setPreferredScrollableViewportSize( new Dimension( 700, 400 ));
JScrollPane scroll = new JScrollPane( tabelaDados );
tabbed = new TabbedPane( scroll );
novoCisalhamentoDireto.getContentPane().add( tabbed );

novoCisalhamentoDireto.show();

desktop.add( novoCisalhamentoDireto );
try
{
  novoCisalhamentoDireto.setSelected( true );
  }catch ( java.beans.PropertyVetoException e ) {JOptionPane.showMessageDialog( null, e + ": CisalhamentoDireto.java: linha46");}

}

Criado 17 de março de 2004
Ultima resposta 18 de mar. de 2004
Respostas 2
Participantes 2