TextArea: java.lang.ClassCastException: java.awt.Frame

tefla

Erfahrenes Mitglied
Hallo zusammen,

In meinem Programm tut sich durch einen Klick auf Laden ein FileDialog öffnen, der mir den Pfad der gewählten Datei zurückwirft. Diese soll nun in einer TextArea geöffnet werden. In der Konsole klappt das ganz gut, nur bekomme ich eine Exception, wenn ich auf die TextArea zugreifen will.

Code:
try { 
                System.out.println("In the main here"); 
                FileInputStream fin = new FileInputStream(fd.getDirectory().toString() + fd.getFile().toString()); 
             
                try { 
                    DataInputStream Input = new DataInputStream(fin); 
                     
                    try { 
                     
                     while ((thisLine = Input.readLine()) != null) { 
                         System.out.println(thisLine); 
                     } 
                    } 
                    catch (Exception e) { 
                     System.out.println(e); 
                    } 

                    TextArea tex = (TextArea)this.getParent(); // an dieser Zeile liegt es wahrscheinlich, aber wie soll ich sonst auf die TextArea zugreifen, die im Frame gesetzt wird ??? 
tex.setText(Input.toString()); 
                } catch (Exception e){ 
                    System.out.println(e); 
                } 

             
            } catch (Exception e){ 
                System.out.println(e.toString()); 
            }
 

Thomas Darimont

Erfahrenes Mitglied
Servus!

TextArea tex = (TextArea)this.getParent(); // an dieser Zeile liegt es wahrscheinlich, aber wie soll ich sonst auf die TextArea zugreifen, die im Frame gesetzt wird ???

Kann so auch nicht funktioneren, ein Frame lässt sich nun mal nicht in eine TextArea umandeln...

Poste mal etwas mehr Programmcode ...

Normalerweise sind die einzelnen Stuerelemente auf dem Frame Private Variablen ...
Bsp.:

Code:
public class myFrame extends Frame{

private java.awt.Button btn1;
private java.awt.TextField tf1;

//im Konstruktor werden diese dann instanziert
public myFrame(){
   super("myFrame");
   setSize(320,240);
   this.btn1 = new Button("PushMe");
   this.tf1 = new TextField(); 
   ....

   }

...
nun kannst du mit 
    this.tf1 auf das TextField zugreiffen ....
...

}

Gruss Tom
 
Zuletzt bearbeitet:

tefla

Erfahrenes Mitglied
danke habs so hinbekommen ..... mehr Code zu posten wär ja nun nicht mehr sinnvoll :eek:)
 

Neue Beiträge