# Zahl im Textarea anzeigen lassen



## Cyz44 (15. Apr 2012)

Ich bin dabei einen grafischen taschenrechner zu implementieren.


```
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import java.util.Scanner;

/**
  *
  * description
  *
  * @version 1.0 from 09.04.2012
  * @xxx
  */

public class q extends JFrame
{
  // Anfang Attribute
  private JButton Null = new JButton();
  private JButton eins = new JButton();
  private JButton zwei = new JButton();
  private JButton drei = new JButton();
  private JButton vier = new JButton();
  private JButton fuenf = new JButton();
  private JButton sechs = new JButton();
  private JButton sieben = new JButton();
  private JButton acht = new JButton();
  private JButton neun = new JButton();
  private JButton punkt = new JButton();
  private JButton enter = new JButton();
  private JButton plus = new JButton();
  private JButton minus = new JButton();
  private JButton mal = new JButton();
  private JButton geteilt = new JButton();
  private JButton variable = new JButton();
  private JButton pi = new JButton();
  private JButton hoch2 = new JButton();
  private JButton wurzel = new JButton();
  private JButton clear = new JButton();
  private JButton graph = new JButton();
  private JButton windowset = new JButton();
  private JTextArea display1 = new JTextArea();
  int x1;
  boolean start = true;
  private String lastCommand;
  private double result;

  JFrame fenster = null;
  JPanel hauptFlaeche = null;
  ZeichenFlaeche zeichenFlaeche = null;
  
  private JScrollPane display1ScrollPane = new JScrollPane(display1);
  // Ende Attribute

  public q (String title)
  {
    super (title);
    setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
    int frameWidth = 500; 
    int frameHeight = 600;
    setSize(frameWidth, frameHeight);
    Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
    int x = (d.width - getSize().width) / 2;
    int y = (d.height - getSize().height) / 2;
    setLocation(x, y);
    Container cp = getContentPane();
    cp.setLayout(null);
    cp.setBackground(new Color(0xB8CFE5));
    
    zeichne();
    Linie();
    achsenbeschriftung();
    Scanner();
    
    
    // Anfang Komponenten
    Null.setBounds(104, 328, 60, 40);
    Null.setText("0");
    Null.setMargin(new Insets(2, 2, 2, 2));
    Null.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        Null_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "0";
        display1.setText(text);
      }
    });
    cp.add(Null);
    
    eins.setBounds(104, 280, 60, 40);
    eins.setText("1");
    eins.setMargin(new Insets(2, 2, 2, 2));
    eins.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        eins_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "1";
        display1.setText(text);
      }
    });
    cp.add(eins);
    
    zwei.setBounds(176, 280, 60, 40);
    zwei.setText("2");
    zwei.setMargin(new Insets(2, 2, 2, 2));
    zwei.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        zwei_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "2";
        display1.setText(text);
      }
    });
    cp.add(zwei);
    
    drei.setBounds(248, 280, 60, 40);
    drei.setText("3");
    drei.setMargin(new Insets(2, 2, 2, 2));
    drei.addActionListener(new ActionListener()
    {
      public void actionPerformed(ActionEvent evt)
      { 
        drei_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "3";
        display1.setText(text);
      }
    });
    cp.add(drei);
    
    vier.setBounds(104, 232, 60, 40);
    vier.setText("4");
    vier.setMargin(new Insets(2, 2, 2, 2));
    vier.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        vier_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "4";
        display1.setText(text);
      }
    });
    cp.add(vier);
    
    fuenf.setBounds(176, 232, 60, 40);
    fuenf.setText("5");
    fuenf.setMargin(new Insets(2, 2, 2, 2));
    fuenf.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      {
        fuenf_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "5";
        display1.setText(text);
      }
    });
    cp.add(fuenf);
    
    sechs.setBounds(248, 232, 60, 40);
    sechs.setText("6");
    sechs.setMargin(new Insets(2, 2, 2, 2));
    sechs.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        sechs_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "6";
        display1.setText(text);
      }
    });
    cp.add(sechs);
    
    sieben.setBounds(104, 184, 60, 40);
    sieben.setText("7");
    sieben.setMargin(new Insets(2, 2, 2, 2));
    sieben.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        sieben_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "7";
        display1.setText(text);
      }
    });
    cp.add(sieben);
    
    acht.setBounds(176, 184, 60, 40);
    acht.setText("8");
    acht.setMargin(new Insets(2, 2, 2, 2));
    acht.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        acht_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "8";
        display1.setText(text);
      }
    });
    cp.add(acht);
    
    neun.setBounds(248, 184, 60, 40);
    neun.setText("9");
    neun.setMargin(new Insets(2, 2, 2, 2));
    neun.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        neun_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "9";
        display1.setText(text);
      }
    });
    cp.add(neun);
    
    punkt.setBounds(176, 328, 60, 40);
    punkt.setText(".");
    punkt.setMargin(new Insets(2, 2, 2, 2));
    punkt.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        punkt_ActionPerformed(evt);
        String text = display1.getText();
        text += ".";
        display1.setText(text);
      }
    });
    cp.add(punkt);
    
    enter.setBounds(248, 328, 60, 40);
    enter.setText("Enter");
    enter.setMargin(new Insets(2, 2, 2, 2));
    enter.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        enter_ActionPerformed(evt);
        String rechnung = display1.getText();
        ScriptEngineManager mgr = new ScriptEngineManager();
        ScriptEngine engine = mgr.getEngineByName("js");
        try
        {
               String text =  (engine.eval(rechnung)).toString();
               display1.setText(text);
        } catch(Exception e){}
      }
    });
    cp.add(enter);
    
    plus.setBounds(320, 184, 60, 40);
    plus.setText("+");
    plus.setMargin(new Insets(2, 2, 2, 2));
    plus.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        plus_ActionPerformed(evt);
        String text = display1.getText();
        text += "+";
        display1.setText(text);
      }
    });
    cp.add(plus);
    
    minus.setBounds(320, 232, 60, 40);
    minus.setText("-");
    minus.setMargin(new Insets(2, 2, 2, 2));
    minus.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        minus_ActionPerformed(evt);
        String text = display1.getText();
        text += "-";
        display1.setText(text);
      }
    });
    cp.add(minus);
    
    mal.setBounds(320, 280, 60, 40);
    mal.setText("*");
    mal.setMargin(new Insets(2, 2, 2, 2));
    mal.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        mal_ActionPerformed(evt);
        String text = display1.getText();
        text += "*";
        display1.setText(text);
      }
    });
    cp.add(mal);
    
    geteilt.setBounds(320, 328, 60, 40);
    geteilt.setText("/");
    geteilt.setMargin(new Insets(2, 2, 2, 2));
    geteilt.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        geteilt_ActionPerformed(evt);
        String text = display1.getText();
        text += "/";
        display1.setText(text);
      }
    });
    cp.add(geteilt);
    
    variable.setBounds(104, 376, 60, 40);
    variable.setText("x");
    variable.setMargin(new Insets(2, 2, 2, 2));
    variable.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        variable_ActionPerformed(evt);
        String text = display1.getText();
        text += "x";
        display1.setText(text);
      }
    });
    cp.add(variable);
    
    pi.setBounds(176, 376, 60, 40);
    pi.setText("\u03C0");
    pi.setMargin(new Insets(2, 2, 2, 2));
    pi.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        pi_ActionPerformed(evt);
        String text = display1.getText();
        text += "\u03C0";
        display1.setText(text);
      }
    });
    cp.add(pi);
    
    hoch2.setBounds(248, 376, 60, 40);
    hoch2.setText("x²");
    hoch2.setMargin(new Insets(2, 2, 2, 2));
    hoch2.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        hoch2_ActionPerformed(evt);
        String text = display1.getText();
        text += "";
        display1.setText(text);
      }
    });
    cp.add(hoch2);
    
    wurzel.setBounds(320, 376, 60, 40);
    wurzel.setText("\u221A");
    wurzel.setMargin(new Insets(2, 2, 2, 2));
    wurzel.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        wurzel_ActionPerformed(evt);
        String text = display1.getText();
        text += "0";
        display1.setText(text);
      }
    });
    cp.add(wurzel);
    
    clear.setBounds(104, 424, 60, 40);
    clear.setText("C");
    clear.setMargin(new Insets(2, 2, 2, 2));
    clear.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        clear_ActionPerformed(evt);
        display1.setText("");
      }
    });
    cp.add(clear);
    
    graph.setBounds(176, 424, 60, 40);
    graph.setText("Graph");
    graph.setMargin(new Insets(2, 2, 2, 2));
    graph.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        graph_ActionPerformed(evt);
        fenster.setVisible(false);
      }
    });
    cp.add(graph);
    
    windowset.setBounds(248, 424, 60, 40);
    windowset.setText("Window");
    windowset.setMargin(new Insets(2, 2, 2, 2));
    windowset.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        windowset_ActionPerformed(evt);
        fenster.setVisible(true);
      }
    });
    cp.add(windowset);
    
    display1ScrollPane.setBounds(104, 32, 280, 110);
    cp.add(display1ScrollPane);

    // Ende Komponenten
    setResizable(false);
    setVisible(true);
  }

  // Anfang Methoden
  

  public void zeichne()                                     // erstellen einer Zeichenfläche in einem neuen Fenster
  {
    fenster = new JFrame();
    fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    fenster.setTitle("Koordinatensystem");
    hauptFlaeche = new JPanel(new BorderLayout());
    zeichenFlaeche = new ZeichenFlaeche(700, 700);
    hauptFlaeche.add(zeichenFlaeche, BorderLayout.CENTER);
    fenster.getContentPane().add(hauptFlaeche);
    fenster.pack();
    fenster.setResizable(false);
    fenster.setVisible(false);

  }

  public void Linie()
  {

    zeichenFlaeche.setzeLinie(0, 0, 700, 0);     // x-Achse
    zeichenFlaeche.setzeLinie(0 , 0, 0, 700);     // y-Achse

    zeichenFlaeche.setzeLinie(450, 340, 450, 360);    // + Punkte x-Achse
    zeichenFlaeche.setzeLinie(500, 340, 500, 360);
    zeichenFlaeche.setzeLinie(550, 340, 550, 360);
    zeichenFlaeche.setzeLinie(600, 340, 600, 360);
    zeichenFlaeche.setzeLinie(650, 340, 650, 360);

    zeichenFlaeche.setzeLinie(350, 340, 350, 360);    // - Punkte x-Achse
    zeichenFlaeche.setzeLinie(300, 340, 300, 360);
    zeichenFlaeche.setzeLinie(250, 340, 250, 360);
    zeichenFlaeche.setzeLinie(200, 340, 200, 360);
    zeichenFlaeche.setzeLinie(150, 340, 150, 360);

    zeichenFlaeche.setzeLinie(390, 300, 410, 300);    // + Punkte y-Achse
    zeichenFlaeche.setzeLinie(390, 250, 410, 250);
    zeichenFlaeche.setzeLinie(390, 200, 410, 200);
    zeichenFlaeche.setzeLinie(390, 150, 410, 150);
    zeichenFlaeche.setzeLinie(390, 100, 410, 100);

    zeichenFlaeche.setzeLinie(390, 400, 410, 400);    // - Punkte y-Achse
    zeichenFlaeche.setzeLinie(390, 450, 410, 450);
    zeichenFlaeche.setzeLinie(390, 500, 410, 500);
    zeichenFlaeche.setzeLinie(390, 550, 410, 550);
    zeichenFlaeche.setzeLinie(390, 600, 410, 600);

  }

  public void achsenbeschriftung()
  {
    zeichenFlaeche.setzeText("y", 395, 40, 20);
    zeichenFlaeche.setzeText("x", 760, 355, 20);

  }
  
 [COLOR="Red"] public void Scanner()
  {
    Scanner scan = new Scanner(System.in);
    int x1;
    x1 = scan.nextInt();

  }[/COLOR]


  
  public void Null_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void eins_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void zwei_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void drei_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void vier_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void fuenf_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void sechs_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void sieben_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void acht_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void neun_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void punkt_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void enter_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void plus_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void minus_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void mal_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void geteilt_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void variable_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void pi_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void hoch2_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void wurzel_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void clear_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void graph_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void windowset_ActionPerformed(ActionEvent evt)
  {
    [COLOR="Red"]display1.setText(" Xmin = " + x1 + "\n Xmax = \n Xscl = \n Ymin = \n Ymax = \n Yscl = ");[/COLOR]
  }

  // Ende Methoden

  public static void main(String[] args)
  {
    new q("q");
  }
}
```

Der Anwender soll eine Zahl eingeben können, z. B xmin = 5 und diese zahl möchte ich dann weiterverwenden, aber dafür muss die zahl ja überhauprt erst erscheinen! Bei den rot markierten stellen komme ich nicht weiter und wenn ich so diesen code compilieren will passiert iwie gar nichts..?


----------



## pro2 (15. Apr 2012)

Also erst mal kennen wir die Klasse ZeichenFlaeche nicht, also kompilieren wirds auch bei niemand anderem hier. 
Dann mal hier die rot markierten Stellen, die man in deinem Code erst mal suchen muss, weil man in dem Java Code nicht rot markieren kann: 
[JAVA=497]
public void Scanner()
  {
    Scanner scan = new Scanner(System.in);
    int x1;
    x1 = scan.nextInt();

  }
[/code]

[JAVA=595]
  public void windowset_ActionPerformed(ActionEvent evt)
  {
   display1.setText(" Xmin = " + x1 + "\n Xmax = \n Xscl = \n Ymin = \n Ymax = \n Yscl = ");
  }[/code]

Und dann zu guter Letzt, versteh ich nicht so ganz was der Scanner hier im GUI zu suchen hat, dann wie die 2. Methode überhaupt an x1 kommen soll, wann diese Methoden überhaupt aufgerufen werden sollen und was du damit bezweckst. Hier gibts Codes für fertige Taschenrechner, vielleicht mal ansehen..?


----------



## Cyz44 (15. Apr 2012)

Ok sry das mit dem rot markieren wusste ich nicht 

Der Scanner, tja, jetzt fällt mir auch auf das der da eig nichts zu suchen hat...
Zur Erklärung: beim klick auf den button "windowset" erscheint im display der text s.u. Der Anwender soll nun in jede der 6 zeilen eine zahl schreiben, mit denen ich dann das Koordinatensystem positioniere bzw. skaliere. z.B. bei "xmin = " und dann die eingegebene zahl. Diese Zahl möchte ich dann in eine variable ablegen, hier eben x1, aber ich blicks einfach nicht.

Ps: Wo gibts hier codes für fertige, grafikfähige taschenrechner (ich find bisher nur "normale" taschenrechner)??


----------



## DerMax (15. Apr 2012)

Hallo.

Du kannst aber auch einen Syntax verwenden:

```
textField.setText("" + deinInt);
```

Mfg
Max


----------



## irgendjemand (15. Apr 2012)

DerMax hat gesagt.:


> Hallo.
> 
> Du kannst aber auch einen Syntax verwenden:
> 
> ...



mal bitte blick in die API werfen
[japi]String#valueOf(int)[/japi]

denn dein code würde intern zu


```
(new StringBuilder()).append("").append(int).toString()
```
umgewandelt ... -> ganz evil


----------



## Gast2 (15. Apr 2012)

irgendjemand hat gesagt.:
			
		

> denn dein code würde intern zu
> 
> Java Code:
> 1
> ...


Warum ist das "ganz evil" ? Außerhalb ner Schleife sollte man davon gar nichts merken...
Nichtsdestotrotz ist der Weg über String#valueOf natürlich schöner.


----------



## Cyz44 (15. Apr 2012)

DerMax hat gesagt.:


> Hallo.
> 
> Du kannst aber auch einen Syntax verwenden:
> 
> ...



Meinst du damit, ich soll in dem textarea nochmal 6 einzelne textfields erzeugen?? ???:L


----------



## Cyz44 (22. Apr 2012)

ich habs jetzt so probiert:


```
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import java.util.Scanner;

/**
  *
  * description
  *
  * @version 1.0 from 09.04.2012
  * @
  */

public class q extends JFrame
{
  // Anfang Attribute
  private JButton Null = new JButton();
  private JButton eins = new JButton();
  private JButton zwei = new JButton();
  private JButton drei = new JButton();
  private JButton vier = new JButton();
  private JButton fuenf = new JButton();
  private JButton sechs = new JButton();
  private JButton sieben = new JButton();
  private JButton acht = new JButton();
  private JButton neun = new JButton();
  private JButton punkt = new JButton();
  private JButton enter = new JButton();
  private JButton plus = new JButton();
  private JButton minus = new JButton();
  private JButton mal = new JButton();
  private JButton geteilt = new JButton();
  private JButton variable = new JButton();
  private JButton pi = new JButton();
  private JButton hoch2 = new JButton();
  private JButton wurzel = new JButton();
  private JButton clear = new JButton();
  private JButton graph = new JButton();
  private JButton windowset = new JButton();
  private JTextArea display1 = new JTextArea();
  private JScrollPane display1ScrollPane = new JScrollPane(display1);

  boolean start = true;
  private String lastCommand;
  private double result;

  JFrame fenster = null;
  JPanel hauptFlaeche = null;
  ZeichenFlaeche zeichenFlaeche = null;

  private JTextField Xmin = new JTextField();
  private JTextField Xmax = new JTextField();
  private JTextField Xscl = new JTextField();
  private JTextField Ymin = new JTextField();
  private JTextField Ymax = new JTextField();
  private JTextField Yscl = new JTextField();
  private JTextField XminEin = new JTextField();
  private JTextField XmaxEin = new JTextField();
  private JTextField XsclEin = new JTextField();
  private JTextField YminEin = new JTextField();
  private JTextField YmaxEin = new JTextField();
  private JTextField YsclEin = new JTextField();
  // Ende Attribute

  public q (String title)
  {
    super (title);
    setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
    int frameWidth = 500; 
    int frameHeight = 600;
    setSize(frameWidth, frameHeight);
    Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
    int x = (d.width - getSize().width) / 2;
    int y = (d.height - getSize().height) / 2;
    setLocation(x, y);
    Container cp = getContentPane();
    cp.setLayout(null);
    cp.setBackground(new Color(0xB8CFE5));
    
    zeichne();
    Linie();
    achsenbeschriftung();
    setRows();

    
    
    // Anfang Komponenten
    Null.setBounds(104, 328, 60, 40);
    Null.setText("0");
    Null.setMargin(new Insets(2, 2, 2, 2));
    Null.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        Null_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "0";
        display1.setText(text);
      }
    });
    cp.add(Null);
    
    eins.setBounds(104, 280, 60, 40);
    eins.setText("1");
    eins.setMargin(new Insets(2, 2, 2, 2));
    eins.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        eins_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "1";
        display1.setText(text);
      }
    });
    cp.add(eins);
    
    zwei.setBounds(176, 280, 60, 40);
    zwei.setText("2");
    zwei.setMargin(new Insets(2, 2, 2, 2));
    zwei.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        zwei_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "2";
        display1.setText(text);
      }
    });
    cp.add(zwei);
    
    drei.setBounds(248, 280, 60, 40);
    drei.setText("3");
    drei.setMargin(new Insets(2, 2, 2, 2));
    drei.addActionListener(new ActionListener()
    {
      public void actionPerformed(ActionEvent evt)
      { 
        drei_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "3";
        display1.setText(text);
      }
    });
    cp.add(drei);
    
    vier.setBounds(104, 232, 60, 40);
    vier.setText("4");
    vier.setMargin(new Insets(2, 2, 2, 2));
    vier.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        vier_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "4";
        display1.setText(text);
      }
    });
    cp.add(vier);
    
    fuenf.setBounds(176, 232, 60, 40);
    fuenf.setText("5");
    fuenf.setMargin(new Insets(2, 2, 2, 2));
    fuenf.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      {
        fuenf_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "5";
        display1.setText(text);
      }
    });
    cp.add(fuenf);
    
    sechs.setBounds(248, 232, 60, 40);
    sechs.setText("6");
    sechs.setMargin(new Insets(2, 2, 2, 2));
    sechs.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        sechs_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "6";
        display1.setText(text);
      }
    });
    cp.add(sechs);
    
    sieben.setBounds(104, 184, 60, 40);
    sieben.setText("7");
    sieben.setMargin(new Insets(2, 2, 2, 2));
    sieben.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        sieben_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "7";
        display1.setText(text);
      }
    });
    cp.add(sieben);
    
    acht.setBounds(176, 184, 60, 40);
    acht.setText("8");
    acht.setMargin(new Insets(2, 2, 2, 2));
    acht.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        acht_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "8";
        display1.setText(text);
      }
    });
    cp.add(acht);
    
    neun.setBounds(248, 184, 60, 40);
    neun.setText("9");
    neun.setMargin(new Insets(2, 2, 2, 2));
    neun.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        neun_ActionPerformed(evt);
        
        String text = display1.getText();
        text += "9";
        display1.setText(text);
      }
    });
    cp.add(neun);
    
    punkt.setBounds(176, 328, 60, 40);
    punkt.setText(".");
    punkt.setMargin(new Insets(2, 2, 2, 2));
    punkt.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        punkt_ActionPerformed(evt);
        String text = display1.getText();
        text += ".";
        display1.setText(text);
      }
    });
    cp.add(punkt);
    
    enter.setBounds(248, 328, 60, 40);
    enter.setText("Enter");
    enter.setMargin(new Insets(2, 2, 2, 2));
    enter.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        enter_ActionPerformed(evt);
        String rechnung = display1.getText();
        ScriptEngineManager mgr = new ScriptEngineManager();
        ScriptEngine engine = mgr.getEngineByName("js");
        try
        {
               String text =  (engine.eval(rechnung)).toString();
               display1.setText(text);
        } catch(Exception e){}
      }
    });
    cp.add(enter);
    
    plus.setBounds(320, 184, 60, 40);
    plus.setText("+");
    plus.setMargin(new Insets(2, 2, 2, 2));
    plus.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        plus_ActionPerformed(evt);
        String text = display1.getText();
        text += "+";
        display1.setText(text);
      }
    });
    cp.add(plus);
    
    minus.setBounds(320, 232, 60, 40);
    minus.setText("-");
    minus.setMargin(new Insets(2, 2, 2, 2));
    minus.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        minus_ActionPerformed(evt);
        String text = display1.getText();
        text += "-";
        display1.setText(text);
      }
    });
    cp.add(minus);
    
    mal.setBounds(320, 280, 60, 40);
    mal.setText("*");
    mal.setMargin(new Insets(2, 2, 2, 2));
    mal.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        mal_ActionPerformed(evt);
        String text = display1.getText();
        text += "*";
        display1.setText(text);
      }
    });
    cp.add(mal);
    
    geteilt.setBounds(320, 328, 60, 40);
    geteilt.setText("/");
    geteilt.setMargin(new Insets(2, 2, 2, 2));
    geteilt.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        geteilt_ActionPerformed(evt);
        String text = display1.getText();
        text += "/";
        display1.setText(text);
      }
    });
    cp.add(geteilt);
    
    variable.setBounds(104, 376, 60, 40);
    variable.setText("x");
    variable.setMargin(new Insets(2, 2, 2, 2));
    variable.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        variable_ActionPerformed(evt);
        String text = display1.getText();
        text += "x";
        display1.setText(text);
      }
    });
    cp.add(variable);
    
    pi.setBounds(176, 376, 60, 40);
    pi.setText("\u03C0");
    pi.setMargin(new Insets(2, 2, 2, 2));
    pi.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        pi_ActionPerformed(evt);
        String text = display1.getText();
        text += "\u03C0";
        display1.setText(text);
      }
    });
    cp.add(pi);
    
    hoch2.setBounds(248, 376, 60, 40);
    hoch2.setText("x²");
    hoch2.setMargin(new Insets(2, 2, 2, 2));
    hoch2.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        hoch2_ActionPerformed(evt);
        String text = display1.getText();
        text += "";
        display1.setText(text);
      }
    });
    cp.add(hoch2);
    
    wurzel.setBounds(320, 376, 60, 40);
    wurzel.setText("\u221A");
    wurzel.setMargin(new Insets(2, 2, 2, 2));
    wurzel.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        wurzel_ActionPerformed(evt);
        String text = display1.getText();
        text += "0";
        display1.setText(text);
      }
    });
    cp.add(wurzel);
    
    clear.setBounds(104, 424, 60, 40);
    clear.setText("C");
    clear.setMargin(new Insets(2, 2, 2, 2));
    clear.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        clear_ActionPerformed(evt);
        display1.setText("");
      }
    });
    cp.add(clear);
    
    graph.setBounds(176, 424, 60, 40);
    graph.setText("Graph");
    graph.setMargin(new Insets(2, 2, 2, 2));
    graph.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        graph_ActionPerformed(evt);
        fenster.setVisible(true);
      }
    });
    cp.add(graph);
    
    windowset.setBounds(248, 424, 60, 40);
    windowset.setText("Window");
    windowset.setMargin(new Insets(2, 2, 2, 2));
    windowset.addActionListener(new ActionListener()
    { 
      public void actionPerformed(ActionEvent evt)
      { 
        windowset_ActionPerformed(evt);
        fenster.setVisible(false);
      }
    });
    cp.add(windowset);
    
    display1ScrollPane.setBounds(104, 32, 280, 120);
    cp.add(display1ScrollPane);

    Xmin.setBounds(104, 32, 65, 20);
    cp.add(Xmin);
    Xmax.setBounds(104, 52, 65, 20);
    cp.add(Xmax);
    Xscl.setBounds(104, 72, 65, 20);
    cp.add(Xscl);
    Ymin.setBounds(104, 92, 65, 20);
    cp.add(Ymin);
    Ymax.setBounds(104, 112, 65, 20);
    cp.add(Ymax);
    Yscl.setBounds(104, 132, 65, 20);
    cp.add(Yscl);
    
    XminEin.setBounds(168, 32, 65, 20);
    cp.add(XminEin);
    XmaxEin.setBounds(168, 52, 65, 20);
    cp.add(XmaxEin);
    XsclEin.setBounds(168, 72, 65, 20);
    cp.add(XsclEin);
    YminEin.setBounds(168, 92, 65, 20);
    cp.add(YminEin);
    YmaxEin.setBounds(168, 112, 65, 20);
    cp.add(YmaxEin);
    YsclEin.setBounds(168, 132, 65, 20);
    cp.add(YsclEin);
    // Ende Komponenten
    setResizable(false);
    setVisible(true);
  }

  // Anfang Methoden
  

  public void zeichne()                                     // erstellen einer Zeichenfläche in einem neuen Fenster
  {
    fenster = new JFrame();
    fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    fenster.setTitle("Koordinatensystem");
    hauptFlaeche = new JPanel(new BorderLayout());
    zeichenFlaeche = new ZeichenFlaeche(700, 700);
    hauptFlaeche.add(zeichenFlaeche, BorderLayout.CENTER);
    fenster.getContentPane().add(hauptFlaeche);
    fenster.pack();
    fenster.setResizable(false);
    fenster.setVisible(false);

  }

  public void Linie()
  {

    zeichenFlaeche.setzeLinie(0, 0, 700, 0);     // x-Achse
    zeichenFlaeche.setzeLinie(0 , 0, 0, 700);     // y-Achse

    zeichenFlaeche.setzeLinie(450, 340, 450, 360);    // + Punkte x-Achse
    zeichenFlaeche.setzeLinie(500, 340, 500, 360);
    zeichenFlaeche.setzeLinie(550, 340, 550, 360);
    zeichenFlaeche.setzeLinie(600, 340, 600, 360);
    zeichenFlaeche.setzeLinie(650, 340, 650, 360);

    zeichenFlaeche.setzeLinie(350, 340, 350, 360);    // - Punkte x-Achse
    zeichenFlaeche.setzeLinie(300, 340, 300, 360);
    zeichenFlaeche.setzeLinie(250, 340, 250, 360);
    zeichenFlaeche.setzeLinie(200, 340, 200, 360);
    zeichenFlaeche.setzeLinie(150, 340, 150, 360);

    zeichenFlaeche.setzeLinie(390, 300, 410, 300);    // + Punkte y-Achse
    zeichenFlaeche.setzeLinie(390, 250, 410, 250);
    zeichenFlaeche.setzeLinie(390, 200, 410, 200);
    zeichenFlaeche.setzeLinie(390, 150, 410, 150);
    zeichenFlaeche.setzeLinie(390, 100, 410, 100);

    zeichenFlaeche.setzeLinie(390, 400, 410, 400);    // - Punkte y-Achse
    zeichenFlaeche.setzeLinie(390, 450, 410, 450);
    zeichenFlaeche.setzeLinie(390, 500, 410, 500);
    zeichenFlaeche.setzeLinie(390, 550, 410, 550);
    zeichenFlaeche.setzeLinie(390, 600, 410, 600);

  }

  public void achsenbeschriftung()
  {
    zeichenFlaeche.setzeText("y", 395, 40, 20);
    zeichenFlaeche.setzeText("x", 760, 355, 20);

  }
  
  public void setRows()
  {
    //String[] zeile = display1.getText();

    

  }



  
  public void Null_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void eins_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void zwei_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void drei_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void vier_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void fuenf_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void sechs_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void sieben_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void acht_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void neun_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void punkt_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void enter_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void plus_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void minus_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void mal_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void geteilt_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void variable_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void pi_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void hoch2_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void wurzel_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void clear_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void graph_ActionPerformed(ActionEvent evt) {
    // TODO hier Quelltext einfügen
  }

  public void windowset_ActionPerformed(ActionEvent evt)
  {
    String str;
    int a;
    str = display1.getText();
    display1.setText(" Xmin = " + str + "\n Xmin = \n Xscl = \n Ymin = \n Ymax = \n Yscl = ");
    str = Integer.valueOf(str).intValue();

    //display1(1,1).setText(" Xmin = ");
    //Xmin.setText("  Xmin = ");
    //String a = Xmin.getText();
    //Xmax.setText("  Xmax = ");
    //Xscl.setText("  Xscl = ");
    //Ymin.setText("  Ymin = ");
    //Ymax.setText("  Ymax = ");
    //Yscl.setText("  Yscl = ");
    
   // XminEin.getText();
    
  }

  // Ende Methoden

  public static void main(String[] args)
  {
    new q("q");
  }
}
```

also in zeile 634 hab ich die methode windowset, in der ich einen string aus dem textarea auslese. Nun will ich den string in eine int-zahl umwandeln aber es kommt immer eine fehlermeldung bei zeile 640: "incompatible types". Weiß jmd was daran falsch ist?


----------



## Deros (23. Apr 2012)

ist doch eigentlich eindeutig, in Zeile 640 versuchst du irgendwas zu casten was so nicht zusammen passt. 

Zeile 640: 
	
	
	
	





```
str = Integer.valueOf(str).intValue()
```

habe überhaupt keine Ahnung was das werden soll. str ist schon ein String den castet du zu Integer, dann machst daraus nen int und den willst wieder zu nem Stirng machen?!?


nur nen String zu nem int wäre: 
	
	
	
	





```
int i = Integer.parseInt(str);
```


----------

