jeditorpanel aus anderer klasse ansprechen

Status
Nicht offen für weitere Antworten.

_Smash_

Mitglied
hallo

ich habe in einer klasse eine funktion

Code:
public void add(String s)
    {
        x[anzahl] = s;
        // GUI.jEditorPane.setText(x[anzahl]);
        anzahl++;
    }

das auskommentierte bezeichnet das was ich machen will :) ich möchte den text in das jEditorPane schreiben.
leider geht das nicht, weil das pane nur private access hat.
wenn ich eine public funktion in die gui schreibe, kann die den text ändern, allerdings kann ich die methode von meiner klasse aus nicht ansprechen, da dann immer kommt: non-static method can not be referenced from a static context.

wie kann ich das also ansprechen?

der code der GUI sieht so aus:

Code:
import java.lang.Object.*;
import javax.swing.*;

/**
 *
 * @author  _Smash_
 */
public class GUI extends javax.swing.JFrame {
    
    String filename = new String();
    
    /** Creates new form GUI */
    public GUI() {        
        initComponents();
    }
    
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    private void initComponents() {
        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();
        jButton3 = new javax.swing.JButton();
        jButton4 = new javax.swing.JButton();
        jEditorPane1 = new javax.swing.JEditorPane();

        getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

        setTitle("MPEG2 Datenstrom Parser");
        setResizable(false);
        addWindowListener(new java.awt.event.WindowAdapter() {
            public void windowClosing(java.awt.event.WindowEvent evt) {
                exitForm(evt);
            }
        });

        jButton1.setText("open File");
        jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton1MouseClicked(evt);
            }
        });

        getContentPane().add(jButton1, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 10, -1, -1));

        jButton2.setText("parse");
        jButton2.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton2MouseClicked(evt);
            }
        });

        getContentPane().add(jButton2, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 10, -1, -1));

        jButton3.setText("print");
        jButton3.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton3MouseClicked(evt);
            }
        });

        getContentPane().add(jButton3, new org.netbeans.lib.awtextra.AbsoluteConstraints(150, 10, -1, -1));

        jButton4.setText("save File");
        jButton4.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton4MouseClicked(evt);
            }
        });

        getContentPane().add(jButton4, new org.netbeans.lib.awtextra.AbsoluteConstraints(210, 10, -1, -1));

        jEditorPane1.setEditable(false);
        jEditorPane1.setMinimumSize(new java.awt.Dimension(300, 200));
        jEditorPane1.setPreferredSize(new java.awt.Dimension(300, 200));
        getContentPane().add(jEditorPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 40, 290, -1));

        pack();
    }

    private void jButton3MouseClicked(java.awt.event.MouseEvent evt) {
        Ergebnis.drucken();
    }

    private void jButton4MouseClicked(java.awt.event.MouseEvent evt) {
        Ergebnis.save();
    }

    private void jButton2MouseClicked(java.awt.event.MouseEvent evt) {
       Parse.parse(filename);
    }

    private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {
        
        filename=ChooseFile.file(); 
        
    }
    
    /** Exit the Application */
    private void exitForm(java.awt.event.WindowEvent evt) {
        
        System.exit(0);
        
    }
    
   
    
    // Variables declaration - do not modify
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JButton jButton3;
    private javax.swing.JButton jButton4;
    private javax.swing.JEditorPane jEditorPane1;
    // End of variables declaration
    
}
 

DP

Top Contributor
mach in deiner gui-klasse eine set-methode, übergib dort den string und setz den text in der gui-klasse. irgenwie verwirrend was du da machen willst...
 

_Smash_

Mitglied
das hab ich doch schon probiert:
--snip--
wenn ich eine public funktion in die gui schreibe, kann die den text ändern, allerdings kann ich die methode von meiner klasse aus nicht ansprechen, da dann immer kommt: non-static method can not be referenced from a static context.
--snip--

wenn ich in die gui eine paneupdate klasse schreibe, dann kann ich diese klasse nicht ansprechen, weil dann der fehler non-static method paneupdate can not be referenced from a static context angezeigt wird.
 

DP

Top Contributor
dann musst du entweder deine static-klasse non-static machen oder deine non-static-klasse static machen...
 

DP

Top Contributor
ich hab mit awt/swing eigentlich garnichts am hut. aber wenn du in deiner gui-klasse eine methode wie

public void setMyText(String _text)
{
this.jEditorPane1.setText(_text);
}

machst, kommt auch ein error oder wie?
 

_Smash_

Mitglied
zur faq:

was ist aber, wenn zb fritz in einer anderen klasse referenziert ist und man will trotzdem auf fritz.test zugreifen?
 
B

Beni

Gast
Dann musst du eine Referenz auf dieses andere Objekt haben, und es nach dem fritz fragen.
Code:
public class Evil{
  private Test fritz = new ...

  public Test getFritz(){
    return fritz;
  }
}

Code:
Evil evil = ...

Test fritz = evil.getFritz();
fritz.doSomething();

Falls es nur ein einziges Evil gibt, kannst du auch das machen:
Code:
public class Evil{
  public Evil instance = new Evil...
  ...
}
Code:
Evil evil = Evil.instance;
Test fritz = evil.getFritz();
...

Aber du kommst nicht drumrum: irgendwann musst du in diese "Kette" von Referenzen hineinspringen.
Das funktioniert bei deinem Problem oben genau gleich...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
MoxMorris Wie macht man String[] = String[] aus einer anderer Methode? Java Basics - Anfänger-Themen 18
N Klassen Methoden anderer Klassen aufrufen Java Basics - Anfänger-Themen 4
M variable in anderer funktion aufrufen Java Basics - Anfänger-Themen 10
julian0507 Array aus Methode in anderer Methode sichtbar machen Java Basics - Anfänger-Themen 10
Encera Auf Objekte aus anderer Klassen zugreifen Java Basics - Anfänger-Themen 20
T Zugriff auf Control anderer Klasse Java Basics - Anfänger-Themen 5
D Array in Main Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 3
J Fehler bei array aus anderer Klasse Java Basics - Anfänger-Themen 3
R TreeSet Zugriff aus anderer Klasse Java Basics - Anfänger-Themen 8
M Von einem Menü Methode aus anderer Klasse ausführen, die errechnete Werte in Datei schreibt. Java Basics - Anfänger-Themen 8
KogoroMori21 Objektvariable anderer Klasse übernehmen, Getter/Setter Java Basics - Anfänger-Themen 11
J In main() Datei geöffnet, von anderer Funktion beschreiben Java Basics - Anfänger-Themen 3
Q Besitzen zwei Strings identische Buchstaben, nur in anderer Reihenfolge? Java Basics - Anfänger-Themen 10
J Methoden Frage: Array-Werte in anderer Methode ändern Java Basics - Anfänger-Themen 4
yoskaem Text Color durch Klicken eines Buttons in anderer Activity ändern Java Basics - Anfänger-Themen 2
pkm Eclipse wie mit anderer JAVA-Version starten? Java Basics - Anfänger-Themen 1
A Auf Eigenschaften von Objekten anderer Klassen zugreifen Java Basics - Anfänger-Themen 5
M Klassen Methode in anderer Klasse aufrufen? Java Basics - Anfänger-Themen 3
M Methode in anderer Klasse aufrufen Java Basics - Anfänger-Themen 5
B Mit methode Objekt aus anderer Klasse erstellen Java Basics - Anfänger-Themen 6
P Zugriff auf Variablen anderer Klassen in Greenfoot Java Basics - Anfänger-Themen 1
M Klassen Klasse aus anderer Klasse "aufrufen" Java Basics - Anfänger-Themen 2
S Java Array Länge aus anderer Klasse lesen Java Basics - Anfänger-Themen 1
B Schleife von anderer Methode stoppen? (Start continue) Java Basics - Anfänger-Themen 18
I Eigenschaften von Position aus anderer Klasse übernehmen Java Basics - Anfänger-Themen 17
A OOP Variable in anderer Klasse durch Methode aufrufen und einer anderen Variable gleichsetzen Java Basics - Anfänger-Themen 2
CptK Interface Klasse Frame (extends JFrame) aus anderer Klasse schließen Java Basics - Anfänger-Themen 7
PaperHat Methoden als Parameter anderer Methode verwenden Java Basics - Anfänger-Themen 11
T OOP GUI aus anderer Klasse updaten Java Basics - Anfänger-Themen 6
CptK Auf ActionListener von anderer Klass aus zugreifen Java Basics - Anfänger-Themen 5
A JButton in anderer Klasse bearbeiten. Java Basics - Anfänger-Themen 2
M String zerlegen anhand anderer String Java Basics - Anfänger-Themen 6
deatzi Wert aus anderer Klasse lesen Java Basics - Anfänger-Themen 7
J Methoden Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 12
C Methoden Auf Methoden anderer Klassen zugreifen Java Basics - Anfänger-Themen 10
S Eingabe in anderer Klasse verwenden Java Basics - Anfänger-Themen 3
T Methoden Auf Variabler aus anderer Methode zugreifen Java Basics - Anfänger-Themen 5
F Interface JButton von anderer Klasse hinzufügen Java Basics - Anfänger-Themen 2
L Klassen Methode aus anderer Klasse Java Basics - Anfänger-Themen 13
S setText aus anderer class heraus Java Basics - Anfänger-Themen 6
M Klassen Methode aus anderer Klasse nicht aufrufbar Java Basics - Anfänger-Themen 11
arjoopy Methoden Methoden anderer Klassen Java Basics - Anfänger-Themen 6
J Button in anderer Klasse ändern Java Basics - Anfänger-Themen 3
E Referenzvariable in anderer Klasse aufrufen Java Basics - Anfänger-Themen 3
E Klassen Referenzvariable in anderer Klasse aufrufen. Java Basics - Anfänger-Themen 1
M Neu instanzierte Klasse übernimmt Werte von anderer Instanz Java Basics - Anfänger-Themen 4
A Variablen In anderer Klasse auf Objekte von JFrame zugreifen Java Basics - Anfänger-Themen 1
magdaStone Logikproblem Umschalten von booleans in anderer Klasse Java Basics - Anfänger-Themen 0
F Methode anderer Klasse aufrufen Java Basics - Anfänger-Themen 1
K OOP Mit anderer Klasse auf JTextField zugreifen Java Basics - Anfänger-Themen 5
N Auf TextFeld aus anderer Klasse zugreifen ohne es zu übergeben Java Basics - Anfänger-Themen 3
P Aufruf Methode anderer Klasse Java Basics - Anfänger-Themen 5
G Variablen Verwendung von Variablen in anderer Klasse Java Basics - Anfänger-Themen 6
1 Arraylist in anderer Klasse aufrufen Java Basics - Anfänger-Themen 11
S Klassen Instanz anderer Klasse raus geben Java Basics - Anfänger-Themen 1
J KeyListener aus anderer Klasse bereitet Probleme Java Basics - Anfänger-Themen 1
B Klassen Auf Instanz anderer Klasse zugreifen Java Basics - Anfänger-Themen 1
D Methoden g.setColor funktioniert nicht bei Methodenaufruf in anderer Klasse Java Basics - Anfänger-Themen 1
N Variablen Variable in Main deklarieren und in anderer Methode nutzen Java Basics - Anfänger-Themen 12
Z Wie Objekte anderer Klassen ansprechen? Java Basics - Anfänger-Themen 2
U Code anderer Programmierern verstehen Java Basics - Anfänger-Themen 2
B Liste in anderer Klasse aufrufen? Java Basics - Anfänger-Themen 3
F Methoden aus anderer classe über nehmen Java Basics - Anfänger-Themen 10
F ArrayListen auf anderer Klasse implementieren Java Basics - Anfänger-Themen 4
I Rückgabewert einer Methode in anderer Klasse verwenden Java Basics - Anfänger-Themen 2
W OOP Member anderer Klassen erreichen Java Basics - Anfänger-Themen 1
X Gwt DnD, Drag auf Droparea in anderer Klasse? Java Basics - Anfänger-Themen 0
N Problem mit Swing Textfeld und Zugriff aus anderer Klasse Java Basics - Anfänger-Themen 6
T Variablen anderer Klassen Java Basics - Anfänger-Themen 1
T Vererbung Variable aus anderer Klasse verwenden Java Basics - Anfänger-Themen 8
M Dynamische Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 11
T [Erledigt] Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 0
R Hashmap in anderer Klasse nicht benutzbar Java Basics - Anfänger-Themen 1
P Methoden Methode in anderer Methode aufrufen Java Basics - Anfänger-Themen 4
Jackii Globale Variable aus anderer Klasse ändern... Java Basics - Anfänger-Themen 4
L Erste Schritte Methode aus anderer Klasse verwenden Java Basics - Anfänger-Themen 16
Mr. Pink Graphics2D in anderer Methode aufrufen Java Basics - Anfänger-Themen 6
W Frame in anderer Klasse anzeigen lassen Java Basics - Anfänger-Themen 1
T Variable aus anderer Klasse Java Basics - Anfänger-Themen 3
A Import anderer Classen aus anderen Projekten Java Basics - Anfänger-Themen 6
O Starte Timer, während anderer Timer noch läuft. Ruft dies Schwierigkeiten hervor? Java Basics - Anfänger-Themen 0
G ArrayList in anderer Klasse verwenden Java Basics - Anfänger-Themen 31
C Timer aus anderer Klasse stoppen/starten Java Basics - Anfänger-Themen 3
Sogomn JLabel in anderer Klasse zum JFrame hinzufügen Java Basics - Anfänger-Themen 2
G Objekt wie Objekt anderer Klasse behandeln Java Basics - Anfänger-Themen 4
K Vererbung Variable aus anderer Klasse nutzen Java Basics - Anfänger-Themen 3
P Klassen JTextfield aus anderer Klasse herausfüllen Java Basics - Anfänger-Themen 12
G Klassen Richtig auf jTextArea aus anderer Klasse zugreifen? Java Basics - Anfänger-Themen 3
A Klassen Klasse in anderer Klasse aufrufen Java Basics - Anfänger-Themen 5
C Klassen Zugriff auf Objekt anderer Klasse Java Basics - Anfänger-Themen 8
V ComboBox Ergebnisse abhängig von anderer ComboBox - Wie? Java Basics - Anfänger-Themen 7
J Button in extra Klasse festlegen und in anderer Klasse einfügen? Java Basics - Anfänger-Themen 3
J GUI Button Klasse in anderer Klasse einfügen Java Basics - Anfänger-Themen 3
Bluedaishi Klassen Thread über if Anweisung starten und von anderer Klassen über Button Beenden Java Basics - Anfänger-Themen 34
G Methodenaufruf anderer Klasse Java Basics - Anfänger-Themen 18
J Threads Variablen Wert aus anderer Klasse auslesen Java Basics - Anfänger-Themen 4
A Array aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 9
N GUI aus anderer Klasse beziehen Java Basics - Anfänger-Themen 21
J Variablen Array aus anderer Klasse auslesen-Wie verhindert man eine NullPointerException? Java Basics - Anfänger-Themen 4
F Erste Schritte String von anderer Klasse auf TextArea von erster Klasse Java Basics - Anfänger-Themen 12

Ähnliche Java Themen

Neue Themen


Oben