How do I get my JTable
displayed on all tabs within the panels? I can only display on the "Day 5" tab.
import java.awt.Container;
import java.sql.ResultSet;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTabbedPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableModel;
public class NewClass extends JFrame{
ResultSet rst = null;
public Container content;
public JPanel jpDespesas, jpGerenciar, jpCofre, jpDia5, jpDia20, jpDia25;
public JLabel jlTotal, jlTitulo, jlVencimento, jlValor, jlSemana, jlCofre;
public JTextField jtTotal, jtTitulo, jtVencimento, jtValor, jtSemana;
public JButton jbCalcular, jbSalvar, jbEditar, jbExcluir, jbTotal, jbCofre;
public JTable jtbDespesas;
public JTabbedPane jtb;
public NewClass() {
super("Controle financeiro");
setLayout(null);
setSize(680, 350);
setResizable(false);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
content = getContentPane();
criaTela();
}
public void criaTela() {
//CRIANDO JPANEL PRINCIPAL E SETANDO PROPRIEDADES
jpDespesas = new JPanel();
jpDespesas.setLayout(null);
jpDespesas.setBorder(BorderFactory.createTitledBorder("Resumo mensal"));
jpDespesas.setBounds(20, 15, 340, 315);
add(jpDespesas);
//CRIANDO PAINEL COM ABAS
jtb = new JTabbedPane();
jtb.setBounds(15, 20, 310, 145);
jpDespesas.add(jtb);
jpDia5 = new JPanel();
jpDia5.setLayout(null);
jpDia5.setBounds(20, 20, 100, 170);
jtb.add("Dia 5", jpDia5);
jpDia20 = new JPanel();
jpDia20.setLayout(null);
jpDia20.setBounds(20, 20, 250, 170);
jtb.add("Dia 20", jpDia20);
jpDia25 = new JPanel();
jpDia25.setLayout(null);
jpDia25.setBounds(20, 20, 250, 170);
jtb.add("Dia 25", jpDia25);
//CRIANDO O JTABLE
jtbDespesas = new JTable();
//SETANDO A QUANTIDADE DE COLUNAS E SEUS RESPECTIVOS TÍTULOS
jtbDespesas.setModel(new DefaultTableModel(new Object[][]{}, new String[]{"Título", "Vencimento", "Valor"}));
//SETANDO A LARGURA DE CADA COLUNA
jtbDespesas.getColumnModel().getColumn(0).setPreferredWidth(100);
jtbDespesas.getColumnModel().getColumn(1).setPreferredWidth(50);
jtbDespesas.getColumnModel().getColumn(2).setPreferredWidth(50);
//ADICIONANDO LINHAS
DefaultTableModel dtm = (DefaultTableModel) jtbDespesas.getModel();
dtm.addRow(new Object[]{});
dtm.addRow(new Object[]{});
dtm.addRow(new Object[]{});
dtm.addRow(new Object[]{});
dtm.addRow(new Object[]{});
dtm.addRow(new Object[]{});
dtm.addRow(new Object[]{});
JScrollPane jp = new JScrollPane();
jp.setBounds(5, 10, 295, 100);
jp.setViewportView(jtbDespesas);
jpDia5.add(jp);
}
public static void main(String[] args) {
new NewClass().setVisible(true);
}
}