# Textdokumment öffnen(NetBeans5 Matisse GUI Builder)



## swerflash (24. Mrz 2006)

Hallo,

wie kann ich ein Dokkument von Typ txt öffnen und den Inhalt in meinem jTextArea anzeigen lassen?

Also die erste Frage wäre, wie kann ich machen, dass wenn ich auf jButton klicke ein Fenster kommt in dem ich Dateien suchen und Öffnen kann.

Und die zweiter Frage wäre dann, wie ich dann den Inhalt der Datei in meinem jTextArea Feld anzeigen kann.

Danke im Voraus


----------



## lin (24. Mrz 2006)

JFileChooser (zum suchen und öffnen)
http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JFileChooser.html
http://java.sun.com/docs/books/tutorial/uiswing/components/filechooser.html

Mit nem FileReader
solltest du eigentl. im Forum finden, denk ich


----------



## André Uhres (24. Mrz 2006)

>wie kann ich machen, dass wenn ich auf jButton klicke ein Fenster kommt in dem ich Dateien suchen und Öffnen kann.
Mit _JFileChooser_

>wie ich dann den Inhalt der Datei in meinem jTextArea Feld anzeigen kann.
Mit JTextArea#read


----------



## swerflash (24. Mrz 2006)

Danke euch beiden, ich versuche das mal


----------



## swerflash (25. Mrz 2006)

Hallo,


leider klappt nicht, habe 2 Problemen, schlechte Englischkenntnisse und sehr schlechte Programmierkenntnisse
:cry:  Die Wörter kann ich mit einem Wörterbuch übersetzen, aber was das andere angeht..., das ist im moment mein Hauptproblem.

Ich baue gerade kleines Programm mit Matisse GUI Builder(NetBeans5)
Wenn ich richtig verstanden habe, muss ich OPEN_DIALOG aufrufen, damit er ein Fenster aufmacht, wo ich mein File suchen kann, nur geht das nicht, er sagt not a statement, also keine Aussage :bahnhof: . Was fehlt hier noch?
(wenns geht mit Erklärung bitte)

```
private void jSchaltflächeMouseClicked(java.awt.event.MouseEvent evt) {                                           
    
        JFileChooser.OPEN_DIALOG;

    }
```


----------



## André Uhres (25. Mrz 2006)

Such im forum nach jfilechooser. Da wirste sicher ne menge finden. z.b.:
http://www.java-forum.org/de/viewtopic.php?t=29449&highlight=jfilechooser


----------



## swerflash (25. Mrz 2006)

So, ich versuche seit Stunden das zu verstehen... ich habe eine Version im Forum gefunden die funktioniert, nur bringt mir das nichts, wenn ich das einfach kopiere ohne es zu verstehen.

Ich baue mein Programm mit NetBeans 5 Matisse GUi Builder.

Mein jFileChooser habe ich bei other Components eingefügt. Jetzt kann ich da drauf zugreifen.

Wenn ich


```
private void jSchaltflächeFileMouseClicked(java.awt.event.MouseEvent evt) {
       
        jFC.showOpenDialog(null);
 
    }
```

mache, dann öffnet er schon mein jFC. Was ich nicht ganz verstehe, warum dort null steht, bzw warum ich dort überhaupt was reinschreiben muss?

Bsp was ich im forum gefunden habe, geht zwar, verstehe ich aber nicht.


```
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());
    }
```

Das habe ich in der API gefunden, hier verstehe ich fast alles nur ExampleFileFilter kennt mein Programm nicht, in der API stand auch 
// Note: source for ExampleFileFilter can be found in FileChooserDemo,
// under the demo/jfc directory in the Java 2 SDK, Standard Edition.

Wo finde ich den Code dafür? Wo ist diese _demo/jfc directory in the Java 2 SDK, Standard Edition?_


----------



## André Uhres (25. Mrz 2006)

swerflash hat gesagt.:
			
		

> ...Wo ist diese _demo/jfc directory in the Java 2 SDK, Standard Edition?_


C:\Program Files\Java\jdk1.5.0_06\demo\jfc\FileChooserDemo\src


----------



## swerflash (26. Mrz 2006)

So,

ich werde leider nicht schlau aus dieser API. Ich verwende NetBeans5 Matisse Gui Builder und dort gibt es JFileChooser. Ich denke deshalb, dass es viel einfacher gehen muss, ich weiss nicht nur wie.

Ich habe in meinem Inspector bei Other Components JPanel eingefügt und auf die haben ich JFileChooser gezogen. Wird das was ich vor habe, überhaupt funktionieren?
Wenn ich jetzt auf mein Button klicke, soll er dann dieses JPanel anzeigen, also JFileChooser.

Ich wollte dann einfach in der Funktion mouseKlicked die Funktion von JFileChooser aufrufen, also so:


```
private void jSchaltflächeFileMouseClicked(java.awt.event.MouseEvent evt) {                                               
        jFCActionPerformed();
    }
```
Er will das ich irgendwas.. jFCActionPerformed(..hier reinschreibe...); , aber ich weiss nicht was ich reinschreiben soll, die Funktion gibt doch void zurück.

Fals jemand NetBeans5 Matisse hat, könnte er mir bitte aufschreiben, wie ich mit hilfe von diesem GUI Builder, das lösen kann, was ich vor habe. Ich sitze schon seit 2 Tagen an dem FileChooser und komme nicht weiter :bahnhof:


----------



## Roar (26. Mrz 2006)

junge, schmeiß erstmal dein netbeans weg. vor allem den gui builder. so lernst du nix. und dir bringts auch nicht, wenn dir das hier jemand kleinschrittig zu erklären versucht. besorg dir nen gutes buch und lern java von anfang an, ohne netbans, ohne matisse, ohne guis.</ratVomWeisenAltenMann>


----------



## swerflash (26. Mrz 2006)

1. Habe mir 2 Bücher schon durchgelesen, in einem Buch hat man Grundlagen der Sprache erklärt und gabs paar Beispiele für die Konsole. Das andere Buch war pure Theorie und ich hatte sehr große Schwierigkeiten zu verstehen was in diesem Buch stand, kein einziges Beispiel war in diesem Buch, das war außerdem ein sehr dickes Buch.
Nur lesen bring nichts, ich habe das schon festgestellt. Ich habe diese 2 Bücher 3 Monate gelesen, hat mir am Ende nichts gebracht.
Ich habe ein Buch gesucht(auf Deutsch), wo Java an Beispielen erklärt wird, nicht nur in der Konsole,sondern auch an  SWINGS/AWT, und so weiter. Habe leider nicht gefunden. Gute Bücher kosten Geld und viel Zeit, beides habe ich nicht mehr.
Ich versuche deshalb jetzt mit etwas einfachem anzufangen, also mit Matisse und wenn ich das gut kann, werde ich dann versuchen weiter zu gehen.


----------



## Illuvatar (26. Mrz 2006)

http://www.java-forum.org/de/viewtopic.php?t=245

Empfehlenswert vor allem das "Handbuch der Java-Programmierung" oder "Java ist auch eine Insel"


----------



## swerflash (26. Mrz 2006)

...........

Ich will java mit NetBeans5 Matisse lernen, gäbe es Bücher(auf Deutsch) dafür, dann hätte ich mir das schon längst gekauft...

Aber wenn in diesem Forum NetBeans 5 Matisse verboten oder unerwünscht ist, dann werde ich hier nichts mehr schreiben.
Ich weiss aus eigener Erfahrung, dass ich am besten etwas lerne, wenn ich es selber mache und sehe, also an Beispielen. Open Books Galileo habe ich auch mir angeshen und vieles durchgelesen.  Syntax von Java kenne ich schon, was int, char etc weiss ich schon, wie Schleifen und Bediedungen funktionieren, weiss ich auch. Was Objekte Methoden, Eigenschaften etc sind, weiss ich auch, Obektorienteire Programmierung und so weiter und so weiter. Ich habe gelesen, gelese, gelesen....nur selber nichts gemacht und das nicht angewendet, überall ist nur Theorie, zu wenig Beispiele und die werden auch zu schlecht erklärt, und für gute Bücher habe ich kein Geld.


----------



## L-ectron-X (26. Mrz 2006)

L-ectron-X' Signatur hat gesagt.:
			
		

> Programmieren lernt man nur durch programmieren.


Nicht aufgeben, probieren! Tipps bekommst du hier auch weiterhin...
...von mir jedenfalls.


----------



## swerflash (26. Mrz 2006)

L-ectron-X hat gesagt.:
			
		

> L-ectron-X' Signatur hat gesagt.:
> 
> 
> 
> ...



Ok, danke Dir, wenigstens einer versteht mich.


```
private void jSchaltflächeFileMouseClicked(java.awt.event.MouseEvent evt) {                                               
        jFCActionPerformed();
    }
```

Warum kann ich so nicht, die Funktion jFCActionPerformed(); aufrufen? Was muss ich hier noch in die Klammer reinschreiben? Die Funktion erwartet void, also brauche ich kein Parameter anzugeben oder? Aber etwas muss ich in die Klammer noch reinschreiben, damit das geht.

Die Funktion, die ich ansteuern möchte heisst

```
private void jFCActionPerformed(java.awt.event.ActionEvent evt)
```


----------



## Roar (26. Mrz 2006)

swerflash hat gesagt.:
			
		

> Was muss ich hier noch in die Klammer reinschreiben? Die Funktion erwartet void, also brauche ich kein Parameter anzugeben oder? Aber etwas muss ich in die Klammer noch reinschreiben, damit das geht.
> Die Funktion, die ich ansteuern möchte heisst
> 
> ```
> ...





			
				swerflash hat gesagt.:
			
		

> Syntax von Java kenne ich schon, was int, char etc weiss ich schon, wie Schleifen und Bediedungen funktionieren, weiss ich auch. Was Objekte Methoden, Eigenschaften etc sind, weiss ich auch, Obektorienteire Programmierung und so weiter und so weiter.


 :!:  :?:   :autsch:  :autsch:  ???:L  :gaen: 

ich sach nix mehr  :roll:


----------



## swerflash (26. Mrz 2006)

Roar hat gesagt.:
			
		

> swerflash hat gesagt.:
> 
> 
> 
> ...



Ok danke. Lächerlich kannst du dich über andere machen, du PRO. Wenn du richtig gelesen hättest, dann hättest du auch die Zeile gelesen, dass ich das alles in der Theorie weiss. Ich habe mir jetzt natürlich nicht alles germekt was dort stand, manches habe ich schon vergessen, da dort keine Beispiele gab, an denen ich das üben konnte. Und wenn man entwas nicht anwendet, dann vergisst man das sehr schnell wieder.

Have fun and good luck, ich mache mich auf die Suche nach einem anderen Forum.


----------



## L-ectron-X (26. Mrz 2006)

Nur für den Fall, dass du noch mal vorbei kommst...

Du bringst hier einiges durcheinander. Nur lesen genügt nicht. Das Gelesene muss durch Praxis vertieft und verstanden werden.

void bedeutet nicht, dass die Methode keine Argumente erwartet, sondern dass sie nichts zurückgibt.
Der Teil, der in der Klammer steht, sind die Argumente, das ist das, was die Methode als Eingabe erwartet.

Ohne Code kann ich jetzt nichts sagen, was da genau falsch läuft, aber deine Methodennamen lassen da einiges vermuten.

@Roar, auch wenn sich hier einige schwer tun, kann man versuchen die Probleme auf "diplomatischem" Weg zu lösen.
Es ist noch kein Meister vom Himmel gefallen...


----------



## stev.glasow (26. Mrz 2006)

void gibt an dass die Methode nichts zurückt gibt - den Parameter musst du aber übergeben, das hat mit dem void nichts zu tun.

Und wieso suchst du dir nen anderes Forum? Angepisst wird man da auch mal. Naja ladde, einige vergessen irgendwie wer hier wem den Gefallen tut.
[edit] voll zu spät


----------



## André Uhres (26. Mrz 2006)

swerflash hat gesagt.:
			
		

> ...Have fun and good luck, ich mache mich auf die Suche nach einem anderen Forum.


Ich finde für Anfänger ist dieses Forum gerade zu empfehlen: geh mal zur Foren-Übersicht und 
vergleiche die Anzahl der Themen und Beiträge für "Anfängerfragen" mit den anderen Foren-Bereichen!
Btw, aus Erfahrung weiss ich dass Anfänger gerade hier weit besser dran sind als in manchem anderen Forum.


----------

