Bem…
um JTable que eu fiz para uma “planilha eletronica” esta sem o nome das colunas…
eu não faço a minima idéia de onde esta o problema ai.
alguem pode me dizer qual foi meu erro?
import javax.swing.JButton;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JMenu;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JFileChooser;
import javax.swing.JTextField;
import javax.swing.JTextPane;
import javax.swing.KeyStroke;
import javax.swing.border.LineBorder;
import javax.swing.table.DefaultTableModel;
import javax.swing.JTable;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.KeyEvent;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Planilha extends JFrame implements ActionListener{
JMenuBar Bar;
JMenu Arquivo;
JMenuItem Save,Load,New,Exit;
JTextField Texto1;
boolean soNum;
String[] Colunas = new String[]
{"A",
"B",
"C",
"D",
"E",
"F",
"G"};
String[][] data= new String [][]{{"","","","","","",""},
{"","","","","","",""},
{"","","","","","",""},
{"","","","","","",""},
{"","","","","","",""}
};
JButton Calcular;
JPanel a,b;
Container c;
JFileChooser LoadF = new JFileChooser();
JFileChooser SaveF = new JFileChooser();
public Planilha(){
//News
Bar = new JMenuBar();
Arquivo = new JMenu("Arquivo");
Save = new JMenuItem("Salvar");
Load = new JMenuItem("Abrir");
New = new JMenuItem("Novo");
Exit = new JMenuItem("Sair");
Texto1 = new JTextField("");
Calcular = new JButton("Calcular");
a = new JPanel();
b = new JPanel();
c = getContentPane();
final JTable Tabela = new JTable(data, Colunas);
//News
//Sets
Tabela.setPreferredScrollableViewportSize(new Dimension(500,400));
Tabela.setFillsViewportHeight(true);
New.addActionListener(this);
New.setMnemonic(KeyEvent.VK_N);
New.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,ActionEvent.CTRL_MASK));
Save.addActionListener(this);
Save.setMnemonic(KeyEvent.VK_S);
Save.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,ActionEvent.CTRL_MASK));
Load.addActionListener(this);
Load.setMnemonic(KeyEvent.VK_A);
Load.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,ActionEvent.CTRL_MASK));
Exit.addActionListener(this);
Exit.setMnemonic(KeyEvent.VK_R);
Exit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F4,ActionEvent.ALT_MASK));
Calcular.addActionListener(this);
a.setLayout(new BorderLayout());
a.add(Bar,BorderLayout.NORTH);
a.setBorder(new LineBorder(Color.BLACK,2));
a.add(Texto1);
a.add(Calcular,BorderLayout.EAST);
b.setLayout(new GridLayout(0,1));
b.add(Tabela);
c.setLayout(new BorderLayout());
c.add(a,BorderLayout.NORTH);
c.add(b,BorderLayout.CENTER);
//Sets
setSize(500,500);
setVisible(true);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
setJMenuBar(Bar);
Bar.add(Arquivo);
Arquivo.add(New);
Arquivo.add(Load);
Arquivo.add(Save);
Arquivo.addSeparator();
Arquivo.add(Exit);
}
final public boolean soNum(){
String s = Texto1.getText();
for(int i=0;i<s.length();i++){
if (!Character.isDigit(s.charAt(i))){
return false;
}
}
return true;
}
public void actionPerformed(ActionEvent e) {
Object Item = e.getSource();
if (Item == New){
new Planilha();
}else if(Item == Save){
int Aceita = SaveF.showSaveDialog(Planilha.this);
}else if (Item == Load){
int Aceita = LoadF.showOpenDialog(Planilha.this);
}else if(Item == Exit){
dispose();
}else if(Item == Calcular){
}
}
public static void main(String[]args){
new Planilha();
Planilha c = new Planilha();
}
}
Agradecido.
Shogogan