Hallo,
bin gerade am verzweifeln. Ich bin dabei in mein unfertiges Uploadtool einen JFileChooser einzubauen. Und egal wie ich es mache, es tut nicht. Aber es tut in anderen Beispielen. Also hier die betroffenen Codes:
FMApplet.java:
FMPanel.java:
Wenn ich nun auf den Button "Upload" klicke passiert einfach nichts. In einem Beispiel wurde der Chooser im Konstruktor der Klasse initiiert. Wenn ich das mache zeigt es nur noch einen grauen Hintergrund anstand meinem UI. Außerdem wird sämtlicher Code (z.B.: Dialogbox) nach dem Initiieren im Action-Handler nicht ausgeführt.
Ich hab jetzt schon viel rumgesucht aber irgendwie hatte keiner ein solches Problem.
Bitte könnt ihr mir sagen, was ich falsch mache.
bin gerade am verzweifeln. Ich bin dabei in mein unfertiges Uploadtool einen JFileChooser einzubauen. Und egal wie ich es mache, es tut nicht. Aber es tut in anderen Beispielen. Also hier die betroffenen Codes:
FMApplet.java:
Code:
package classes;
import javax.swing.JApplet;
import javax.swing.SwingUtilities;
public class FMApplet extends JApplet
{
// on load
public void init()
{
// create the GUI
try
{
SwingUtilities.invokeAndWait(new Runnable()
{
public void run()
{
createGUI();
}
});
}
catch (Exception e)
{
System.err.println("Failed to create the GUI");
}
}
// creates the GUI
private void createGUI()
{
FMPanel panel = new FMPanel();
panel.setOpaque(true);
setContentPane(panel);
}
}
FMPanel.java:
Code:
package classes;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JTable;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.Icon;
import javax.swing.UIManager;
import javax.swing.JOptionPane;
import javax.swing.JFileChooser;
import java.io.File;
public class FMPanel extends JPanel implements ActionListener
{
private FMTree treePanel;
public static Icon folderIcon;
public static Icon fileIcon;
public FMPanel()
{
super(new BorderLayout());
// create the components
treePanel = new FMTree();
JButton refreshButton = new JButton("Aktualisieren");
refreshButton.setActionCommand("refresh");
refreshButton.addActionListener(this);
JButton newfolderButton = new JButton("Neuer Ordner");
newfolderButton.setActionCommand("new_folder");
newfolderButton.addActionListener(this);
JButton uploadButton = new JButton("Uploaden");
uploadButton.setActionCommand("upload");
uploadButton.addActionListener(this);
JButton downloadButton = new JButton("Auswahl downloaden");
downloadButton.setActionCommand("download");
downloadButton.addActionListener(this);
// layout
treePanel.setPreferredSize(new Dimension(199, 500));
add(treePanel, BorderLayout.WEST);
FMTable table = new FMTable();
table.setPreferredSize(new Dimension(600, 500));
add(table, BorderLayout.EAST);
GridLayout grid = new GridLayout(0,4);
grid.setHgap(2);
JPanel panel = new JPanel(grid);
panel.add(refreshButton);
panel.add(newfolderButton);
panel.add(uploadButton);
panel.add(downloadButton);
add(panel, BorderLayout.SOUTH);
}
public void actionPerformed(ActionEvent e)
{
String command = e.getActionCommand();
if (command == "new_folder")
{
JOptionPane.showMessageDialog(null, "Sie müssen eine Ganzzahl eingeben", "Eine Nachricht", JOptionPane.WARNING_MESSAGE);
}
else if (command == "upload")
{
JFileChooser chooser = new JFileChooser();
chooser.setMultiSelectionEnabled(false);
if (chooser.showOpenDialog(null) ==
JFileChooser.APPROVE_OPTION)
System.out.println ("Datei "+chooser.getSelectedFile()+
" ausgewählt.");
}
else if (command == "download")
{
}
}
}
Wenn ich nun auf den Button "Upload" klicke passiert einfach nichts. In einem Beispiel wurde der Chooser im Konstruktor der Klasse initiiert. Wenn ich das mache zeigt es nur noch einen grauen Hintergrund anstand meinem UI. Außerdem wird sämtlicher Code (z.B.: Dialogbox) nach dem Initiieren im Action-Handler nicht ausgeführt.
Ich hab jetzt schon viel rumgesucht aber irgendwie hatte keiner ein solches Problem.
Bitte könnt ihr mir sagen, was ich falsch mache.