Hallo,
das folgende Programm liest aus einer Datei (beinhaltet nur ein Integerwert) die Anzahl von JCheckBoxes. Diese JCheckBoxes werden nur dargestellt wenn ich die größe des Fenster mit der Maus verändere. Wie kann man das Fenster aktualiesieren und zur jeder JCheckBox ein actionPerformed definieren?
Viele Grüße
das folgende Programm liest aus einer Datei (beinhaltet nur ein Integerwert) die Anzahl von JCheckBoxes. Diese JCheckBoxes werden nur dargestellt wenn ich die größe des Fenster mit der Maus verändere. Wie kann man das Fenster aktualiesieren und zur jeder JCheckBox ein actionPerformed definieren?
Code:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
public class checkboxDynamic extends JFrame implements ActionListener {
private JButton openHeaderFile, openMessungenFile, calculate;
private JPanel NorthPanel, CenterPanel, SouthPanel;
private File HeaderFile, MessungenFile;
public checkboxDynamic() {
NorthPanel = new JPanel();
CenterPanel = new JPanel();
openHeaderFile = new JButton("Oeffne Header");
openHeaderFile.addActionListener(this);
NorthPanel.add(openHeaderFile);
getContentPane().add(NorthPanel, BorderLayout.NORTH);
getContentPane().add(CenterPanel, BorderLayout.CENTER);
setTitle("Box");
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(300,300);
setVisible(true);
}
public void actionPerformed(ActionEvent e){
if (e.getSource() == openHeaderFile){
SelectFile loadedFile = new SelectFile();
HeaderFile = loadedFile.getFile();
System.out.print(HeaderFile.getAbsolutePath());
try {
int MengecheckBoxes;
Scanner myScanner = new Scanner(new File(HeaderFile.getAbsolutePath()));
MengecheckBoxes = myScanner.nextInt();
for (int i = 1; i <= MengecheckBoxes; i++)
CenterPanel.add(new JCheckBox());
} catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
}
Code:
import java.io.File;
import javax.swing.JFileChooser;
public class SelectFile {
public File getFile(){
File file = null;
JFileChooser fc = new JFileChooser();
//fc.addChoosableFileFilter(new JavaFilter());
int result = fc.showOpenDialog(null);
if (result == JFileChooser.APPROVE_OPTION)
file = fc.getSelectedFile();
System.out.print("File: " + file.getAbsolutePath());
return file;
}
}
Viele Grüße