Eu tenho um panel com 6 botões configurados num BoxLayout,so que quando eu clico no botao de comparacao de contagens,eu gostaria que aparecesse um Jtable na parte de baixo desse mesmo panel, ou entao outra solucao,so que eu queria que esse Jtable,sumisse caso eu clicasse em outra opcao,e aparecesse outras coisas no lugar onde ele estava.
Alguem tem alguma sugestao de como eu posso fazer isso?
Segue o codigo…
package aplicacao.gui;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.IOException;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import org.apache.log4j.Logger;
import aplicacao.bussiness.EditarArquivo;
import aplicacao.bussiness.UtilIO;
import aplicacao.bussiness.Operacao;
public class Gui extends JFrame {
private static JFileChooser filesChooser;
public static Logger log = Logger.getLogger(Gui.class);
public Gui() {
super("SCC - Sistema de Comparação de Contagem");
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.X_AXIS));
JButton merge = new JButton("Gerar arquivo único para contagem");
merge.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
try {
JFileChooser fileChooser = Gui.fileChooser();
int status = fileChooser.showOpenDialog(null);
if (status == JFileChooser.APPROVE_OPTION) {
File selectedFiles[] = fileChooser.getSelectedFiles();
UtilIO.mergeArquivos(selectedFiles, "contagem");
}
} catch (IOException e) {
System.out.println(e.getMessage());
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
});
JButton setor = new JButton("Gerar arquivo único para setor");
setor.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
try {
JFileChooser fileChooser = Gui.fileChooser();
int status = fileChooser.showOpenDialog(null);
if (status == JFileChooser.APPROVE_OPTION) {
File selectedFiles[] = fileChooser.getSelectedFiles();
UtilIO.mergeArquivos(selectedFiles, "setor");
}
} catch (IOException e) {
System.out.println(e.getMessage());
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
});
JButton comparar = new JButton("Comparar contagens");
comparar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
JTable jTable = new JTable();
jTable
.setModel(new DefaultTableModel(new Object[][] {},
new String[] { "Referência", "Contagem 1",
"Contagem 2" }));
Operacao.configuraJTable(jTable);
JScrollPane scrollPane = new JScrollPane(jTable);
JPanel panelTable = new JPanel();
panelTable.add(scrollPane);
getContentPane().add(panelTable, BorderLayout.SOUTH);
pack();
setVisible(true);
}
});
JButton relatorio = new JButton("Gerar relatório por setor");
relatorio.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
JTable jTable = new JTable();
jTable.setModel(new DefaultTableModel(new Object[][] {},
new String[] { "Referência",
"Quantidade na primeira contagem",
"Setor na contagem 1",
"Quantidade na segunda contagem",
"Setor na contagem 2" }));
Operacao.relatorioSetor(jTable);
JScrollPane scrollPane = new JScrollPane(jTable);
JPanel panelTable = new JPanel();
panelTable.add(scrollPane);
getContentPane().add(panelTable, BorderLayout.SOUTH);
pack();
setVisible(true);
}
});
JButton espacos = new JButton("Configurar espaços das contagens");
espacos.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
try {
EditarArquivo.editar();
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
});
panel.add(merge);
panel.add(comparar);
panel.add(setor);
panel.add(relatorio);
panel.add(espacos);
getContentPane().add(panel);
setVisible(true);
pack();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static JFileChooser fileChooser() {
if (filesChooser == null) {
filesChooser = new JFileChooser(".");
filesChooser.setMultiSelectionEnabled(true);
File diretorio = new File(
"C:\\Arquivos de programas\\Recebe\\CFG_NOVA\\SAIDA");
if (diretorio.exists()) {
filesChooser.setCurrentDirectory(diretorio);
}
filesChooser.setBackground(Color.blue);
filesChooser.setForeground(Color.red);
}
return filesChooser;
}
public static void main(String[] args) {
new Gui();
}
}
