JTABLE Quero ver o Cabeçalho!

Estou utilizando netbeans 4.o e estou iniciando em um projetinho de uma interface. Estou com um problema que minha tabela não mostra o cabeçalho que eu defini. Alguém poderia me dizer porque ?

[code]/*

  • Principal.java
  • Created on 24 de Janeiro de 2005, 19:30
    */

package view;

import javax.swing.table.JTableHeader;

/**
*

  • @author flaviog
    */
    public class Principal extends javax.swing.JFrame {

    /** Creates new form Principal */
    public Principal() {
    initComponents();
    }

    /** This method is called from within the constructor to

    • initialize the form.

    • WARNING: Do NOT modify this code. The content of this method is

    • always regenerated by the Form Editor.
      */
      private void initComponents() {
      jSplitPane1 = new javax.swing.JSplitPane();
      jTable1 = new javax.swing.JTable();
      jTable2 = new javax.swing.JTable();

      getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

      setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
      setTitle(“Pacote”);
      setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
      setResizable(false);
      jSplitPane1.setOrientation(javax.swing.JSplitPane.VERTICAL_SPLIT);
      jSplitPane1.setOneTouchExpandable(true);
      jTable1.setBorder(new javax.swing.border.MatteBorder(null));
      jTable1.setModel(new javax.swing.table.DefaultTableModel(
      new Object [][] {
      {“dADO 1”, “dADO 2”, null},
      {null, null, null},
      {null, null, null},
      {null, null, null}
      },
      new String [] {
      “Data / Hora”, “Título”, “Estado”
      }
      ) {
      boolean[] canEdit = new boolean [] {
      false, false, false
      };

       public boolean isCellEditable(int rowIndex, int columnIndex) {
           return canEdit [columnIndex];
       }
      

      });
      jTable1.setToolTipText(“Interru\u00e7\u00f5es das \u00daltimas 24 h”);
      jTable1.setEnabled(false);
      jTable1.setOpaque(false);
      jTable1.setTableHeader(new JTableHeader ()
      );
      jSplitPane1.setTopComponent(jTable1);

      jTable2.setBorder(new javax.swing.border.MatteBorder(null));
      jTable2.setModel(new javax.swing.table.DefaultTableModel(
      new Object [][] {
      {null, null, null},
      {null, null, null},
      {null, null, null},
      {null, null, null}
      },
      new String [] {
      “Data /Hora”, “Localização”, “Title 3”
      }
      ) {
      boolean[] canEdit = new boolean [] {
      false, false, false
      };

       public boolean isCellEditable(int rowIndex, int columnIndex) {
           return canEdit [columnIndex];
       }
      

      });
      jTable2.setToolTipText(“Avisos gerais de Servi\u00e7o”);
      jTable2.setEnabled(false);
      jTable2.setOpaque(false);
      jTable2.setTableHeader(null);
      jSplitPane1.setBottomComponent(jTable2);

      getContentPane().add(jSplitPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 370, 290));

      pack();
      }

    /**

    • @param args the command line arguments
      */
      public static void main(String args[]) {
      java.awt.EventQueue.invokeLater(new Runnable() {
      public void run() {
      new Principal().setVisible(true);
      }
      });
      }

    // Variables declaration - do not modify
    private javax.swing.JSplitPane jSplitPane1;
    private javax.swing.JTable jTable1;
    private javax.swing.JTable jTable2;
    // End of variables declaration

}[/code]

São duas tabelas em um jsplit pane uma em cima e outra em baixo.

vc deve colocar a JTable dentro de um JScrollPane, e depois adicionar o JScrollPane no panel onde vc quer que apareceça a JTable

http://javaalmanac.com/egs/javax.swing.table/ShowHead.html