PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probleme mit JFilechooser



CEROG
18-02-2004, 19:15
Hallo zusammen,

ich kämpfe gerade mit einem Java-Programm.

Dabei muß ich eine Datei öffnen. Mit dem JFilechooser sollte es eigentlich gehen.
Leider habe ich damit ein Problem.

Der JFilechooser wird in einem Dateiadapter verwendet. Jede Klasse und jeder Adapter ist in einer eigenen Datei untergebracht.

Die Unterfunktion, in der der Filechooser sieht so aus.
public String dateiOeffnen (){
JFileChooser dateiSelektion = new JFileChooser();
dateiSelektion.setMultiSelectionEnabled(true);
int option = dateiSelektion.showDialog(MenuAdapter.this);
if (option == JFileChooser.APPROVE_OPTION) {
File dateiName = dateiSelektion.getSelectedFile();
}
}

Leider bekomme ich folgende Fehlermeldung:
MenuAdapter.java:15: showDialog(java.awt.Component,java.lang.String) in javax.swing.JFileChooser cannot be applied to (MenuAdapter)
int option = dateiSelektion.showDialog(this);


Kann mir jemand helfen, dieses Problem zu beseitigen?

Viele Grüße,

CEROG

fs111
18-02-2004, 20:26
Was soll denn bitte "MenuAdapter.this" sein?

fs111

peschmae
18-02-2004, 20:57
Bitte Code-Tags verwenden. Entweder [ code ] und [ /code ] oder der [#]-Button in der Werkzeugleiste.

MfG Peschmä

bischi
19-02-2004, 16:42
Aus der SDK-Doku:



public class JFileChooser
extends JComponent
implements Accessible


JFileChooser provides a simple mechanism for the user to choose a file. For information about using JFileChooser, see How to Use File Choosers, a section in The Java Tutorial.


The following code pops up a file chooser for the user's home directory that sees only .jpg and .gif images:

JFileChooser chooser = new JFileChooser();
// Note: source for ExampleFileFilter can be found in FileChooserDemo,
// under the demo/jfc directory in the Java 2 SDK, Standard Edition.
ExampleFileFilter filter = new ExampleFileFilter();
filter.addExtension("jpg");
filter.addExtension("gif");
filter.setDescription("JPG & GIF Images");
chooser.setFileFilter(filter);
int returnVal = chooser.showOpenDialog(parent);
if(returnVal == JFileChooser.APPROVE_OPTION) {
System.out.println("You chose to open this file: " +
chooser.getSelectedFile().getName());
}

MfG Bischi

CEROG
19-02-2004, 16:53
Hallo Bischi,

das scheint mir etwas weiter zu helfen. Mein problem scheint zu sein, daß ich den Frame, den ich in der Applikation definiert habe, über über zwei Stufen weiterreichen muß.

Wie das geht, habe ich noch nicht raus.

Viele Grüße,

CEROG

fs111
20-02-2004, 14:07
mach einfach ein private JFrame frame für die jeweilige Klasse, nen getter und setter dazu und übergib ihn gleich im Konstruktor mit, dann hast Du ihn da, wo Du ihn brauchst. Ich mache das auch immer so.

fs111