G
Guest
Gast
ich wollt einen addierer in frame machen, da man das programm ja dann als jar-datei besser starten kann und so. also hab ich einfach mal die scanner-funktion aus der konsole übertragen und das sah dann folgendermaßen aus:
Code:
import java.awt.*;
import java.awt.event.*;
/**
*
* Beschreibung
*
* @version 1.0 vom 20.09.2007
* @author
*/
import java.util.Scanner;
public class addierer extends Frame {
// Anfang Variablen
private TextField source1 = new TextField();
private TextField source2 = new TextField();
private Button button1 = new Button();
private TextField target = new TextField();
// Ende Variablen
public addierer(String title) {
// Frame-Initialisierung
super(title);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) { System.exit(0); }
});
int frameWidth = 300;
int frameHeight = 300;
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);
Panel cp = new Panel(null);
add(cp);
// Anfang Komponenten
source1.setBounds(16, 16, 89, 24);
source1.setText("");
cp.add(source1);
source2.setBounds(184, 16, 89, 24);
source2.setText("");
cp.add(source2);
button1.setBounds(80, 88, 129, 57);
button1.setLabel("ADDIEREN!");
cp.add(button1);
button1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
button1ActionPerformed(evt);
}
});
target.setBounds(40, 184, 209, 24);
target.setText("");
cp.add(target);
// Ende Komponenten
setResizable(false);
setVisible(true);
}
// Anfang Ereignisprozeduren
public void button1ActionPerformed(ActionEvent evt) {
target.setText(ausgabe);
}
// Ende Ereignisprozeduren
public static void main(String[] args) {
new addierer("addierer");
TextField target = new TextField("");
int ausgabe;
Scanner sc = new Scanner(System.in);
int eingabe1 = sc.nextInt();
Scanner sca = new Scanner(System.in);
int eingabe2 = sca.nextInt();
ausgabe=eingabe1+eingabe2;
}
}[\code]
wobei source1+2 die felder sind in die man die zahlen eingibt und target das ausgabefeld ist. wahrscheinlich funktioniert das mit der scannerfunktion gar nicht so wie ich das gemacht habe und ich würde mich freuen wenn jemand mir sagen könnte wo meine fehler sind. erstaunt war ich aber erstmal als das hier beim compilieren rauskam:
[code]Compiliere D:\Dateien\javaprogramme\addierer.java mit Java-Compiler
addierer.java:64:19: cannot find symbol
symbol : variable ausgabe
location: class addierer
target.setText(ausgabe);
^
1 error[\code]
denn bei nem anderen programm wo ich nur einen button und ein textfeld hatte und im textfeld was erscheinen sollte wenn man auf den button klickt, hat dieser befehl super funktioniert.