R
RobinHH1
Gast
Hallo hier is mein Quelltext,
ich wollte ansich erreichen, dass das "Programm" mit einem Knopfdruck aus dem String einen Int Wert macht und diesen dann mit 5 addiert. Wäre sehr nett wenn mir jemand einen Tipp geben kann, die Fehlermeldung bei blueJ lautet:
"local variable zwischenspeicher1 is accessed from within inner class; needs to be declared final"
Hier ist der Quelltext:
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;
/**
*
* Beschreibung
*
* @version 1.0 vom 04.12.2007
* @author
*/
public class TextAufsAndereTextFeldÜbertragen extends java.applet.Applet {
// Anfang Variablen
TextArea eingabeFeld;
Label ausgabeFeld;
String eingegebenerText;
String auszugebenderText;
String auszugebenderText1;
Button starter;
Button starter1;
Button starter2;
int zwischenspeicher;
int zwischenspeicher1;
// Ende Variablen
public void init() {
eingabeFeld = new TextArea ("Bitte Text eingeben",20,20);
starter = new Button ("Fühe ein dreifaches HSV ein!");
ausgabeFeld = new Label ("");
starter1 = new Button ("Den Text in das nächste Feld übertragen");
starter2 = new Button ("Die eingegebene Zahl wird mit 5 addiert");
int zwischenspeicher1;
int zwischenspeicher2;
setLayout (new GridLayout (2,3,8,5));
add (eingabeFeld);
add (starter);
add (starter1);
add (ausgabeFeld);
add (starter2);
starter1.addActionListener (new ActionListener () {
public void actionPerformed (ActionEvent e) {
eingegebenerText = eingabeFeld.getText ();
ausgabeFeld.setText (eingegebenerText);
}});
starter.addActionListener (new ActionListener () {
public void actionPerformed (ActionEvent e) {
eingegebenerText = eingabeFeld.getText ();
auszugebenderText = eingegebenerText.substring (0,eingegebenerText.length()/2);
auszugebenderText1 = eingegebenerText.substring (eingegebenerText.length ()/2,eingegebenerText.length());
ausgabeFeld.setText (auszugebenderText + " HSV HSV HSV " + auszugebenderText1);
starter2.addActionListener (new ActionListener () {
public void actionPerformed (ActionEvent e) {
eingegebenerText=eingabeFeld.getText();
zwischenspeicher1=Integer.parseInt(eingegebenerText);//nimmt den eingegebenen text und macht ihn zu einer zahl
zwischenspeicher1+=5;//addiert auf die umgewandelten string (jetzt int) 5
eingegebenerText=Integer.toString(zwischenspeicherZahl);//wandelt die zahl wieder in einen string unm
ausgabeText=eingegebenerText;
ausgabeFeld.setText(ausgabeText);
}});
}});
}
}
MFG RobinHH
ich wollte ansich erreichen, dass das "Programm" mit einem Knopfdruck aus dem String einen Int Wert macht und diesen dann mit 5 addiert. Wäre sehr nett wenn mir jemand einen Tipp geben kann, die Fehlermeldung bei blueJ lautet:
"local variable zwischenspeicher1 is accessed from within inner class; needs to be declared final"
Hier ist der Quelltext:
Code:
Das ist mein Code
import java.awt.event.*;
import java.applet.Applet;
/**
*
* Beschreibung
*
* @version 1.0 vom 04.12.2007
* @author
*/
public class TextAufsAndereTextFeldÜbertragen extends java.applet.Applet {
// Anfang Variablen
TextArea eingabeFeld;
Label ausgabeFeld;
String eingegebenerText;
String auszugebenderText;
String auszugebenderText1;
Button starter;
Button starter1;
Button starter2;
int zwischenspeicher;
int zwischenspeicher1;
// Ende Variablen
public void init() {
eingabeFeld = new TextArea ("Bitte Text eingeben",20,20);
starter = new Button ("Fühe ein dreifaches HSV ein!");
ausgabeFeld = new Label ("");
starter1 = new Button ("Den Text in das nächste Feld übertragen");
starter2 = new Button ("Die eingegebene Zahl wird mit 5 addiert");
int zwischenspeicher1;
int zwischenspeicher2;
setLayout (new GridLayout (2,3,8,5));
add (eingabeFeld);
add (starter);
add (starter1);
add (ausgabeFeld);
add (starter2);
starter1.addActionListener (new ActionListener () {
public void actionPerformed (ActionEvent e) {
eingegebenerText = eingabeFeld.getText ();
ausgabeFeld.setText (eingegebenerText);
}});
starter.addActionListener (new ActionListener () {
public void actionPerformed (ActionEvent e) {
eingegebenerText = eingabeFeld.getText ();
auszugebenderText = eingegebenerText.substring (0,eingegebenerText.length()/2);
auszugebenderText1 = eingegebenerText.substring (eingegebenerText.length ()/2,eingegebenerText.length());
ausgabeFeld.setText (auszugebenderText + " HSV HSV HSV " + auszugebenderText1);
starter2.addActionListener (new ActionListener () {
public void actionPerformed (ActionEvent e) {
eingegebenerText=eingabeFeld.getText();
zwischenspeicher1=Integer.parseInt(eingegebenerText);//nimmt den eingegebenen text und macht ihn zu einer zahl
zwischenspeicher1+=5;//addiert auf die umgewandelten string (jetzt int) 5
eingegebenerText=Integer.toString(zwischenspeicherZahl);//wandelt die zahl wieder in einen string unm
ausgabeText=eingegebenerText;
ausgabeFeld.setText(ausgabeText);
}});
}});
}
}
MFG RobinHH