Variablen [Java] Variable nicht erkannt

Andy0805

Mitglied
Also ich weiß nich ob ich hier richtig bin, aber wohin sonst^^

Ich spiel grad ein bissl mit Java rum und wollte einen simplen Rechner, der +,-,* und / kann. Jedoch scheiter ich schon an +^^ Ich definiere bei + eine Variable mit int, die das Ergebnis aus dem 1. und 2. Textfeld berechnet, wandel es in einen String um und mache mit setText das ding ins Ergebnisfeld rein, funzt jedoch nicht. Im Ergebnis- Feld denk ich hab ich alles richtig, obwohl NetBeans einen Fehler anzeigt, das er die Variable nich findet. Sagt mir bitte wo der Fehler is!
[Java]package Rechner;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

/**
*
* @author Andy
*/
public class Rechner extends javax.swing.JPanel {

/**
* Creates new form Rechner
*/
public Rechner() {
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.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

jInternalFrame1 = new javax.swing.JInternalFrame();
Plus = new javax.swing.JButton();
Minus = new javax.swing.JButton();
Mal = new javax.swing.JButton();
Geteilt = new javax.swing.JButton();
jLabel1 = new javax.swing.JLabel();
Aufgabe = new javax.swing.JTextField();
Aufgabe2 = new javax.swing.JTextField();
Lösung = new javax.swing.JTextField();

jInternalFrame1.setVisible(true);

javax.swing.GroupLayout jInternalFrame1Layout = new javax.swing.GroupLayout(jInternalFrame1.getContentPane());
jInternalFrame1.getContentPane().setLayout(jInternalFrame1Layout);
jInternalFrame1Layout.setHorizontalGroup(
jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 0, Short.MAX_VALUE)
);
jInternalFrame1Layout.setVerticalGroup(
jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 0, Short.MAX_VALUE)
);

setToolTipText("Hier gibts nix!");
setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
setName("Rechner");

Plus.setText("+");
Plus.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
PlusActionPerformed(evt);
}
});

Minus.setText("-");

Mal.setText("*");
Mal.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
MalActionPerformed(evt);
}
});

Geteilt.setText("/");

jLabel1.setFont(new java.awt.Font("Tahoma", 1, 20)); // NOI18N
jLabel1.setText("Rechner");

Aufgabe2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
Aufgabe2ActionPerformed(evt);
}
});

Lösung.setEditable(false);
Lösung.setFont(new java.awt.Font("Tahoma", 0, 15)); // NOI18N
Lösung.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
LösungActionPerformed(evt);
}
});

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
this.setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(24, 24, 24)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 93, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(140, 140, 140)
.addComponent(Geteilt))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(Lösung, javax.swing.GroupLayout.PREFERRED_SIZE, 183, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addComponent(Aufgabe, javax.swing.GroupLayout.PREFERRED_SIZE, 91, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(Aufgabe2, javax.swing.GroupLayout.PREFERRED_SIZE, 86, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(Mal)
.addComponent(Plus))
.addGap(101, 101, 101)
.addComponent(Minus, javax.swing.GroupLayout.PREFERRED_SIZE, 41, javax.swing.GroupLayout.PREFERRED_SIZE))))))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(36, 36, 36)
.addComponent(Lösung, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(28, 28, 28)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(Aufgabe, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(Aufgabe2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(65, 65, 65)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(Plus)
.addComponent(Minus))
.addGap(28, 28, 28)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(Mal)
.addComponent(Geteilt))
.addContainerGap(26, Short.MAX_VALUE))
);
}// </editor-fold>
// Mal
private void MalActionPerformed(java.awt.event.ActionEvent evt) {

}
// Plus
private void PlusActionPerformed(java.awt.event.ActionEvent evt) {
int LösungV = Integer.parseInt(Aufgabe.getText() + Integer.parseInt(Aufgabe2.getText()));
Lösung.setText(Integer.toString(LösungV));
}
//2. Eingabefeld
private void Aufgabe2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
// Ergebnisfeld
private void LösungActionPerformed(java.awt.event.ActionEvent evt) {
if (LösungV != 0) {
try {
String LösungV2 = Integer.toString(LösungV);
Lösung.setText(LösungV2);
} catch (NumberFormatException ex){
//es war keine Zahl
}}
}



// Variables declaration - do not modify
private javax.swing.JTextField Aufgabe;
private javax.swing.JTextField Aufgabe2;
private javax.swing.JButton Geteilt;
private javax.swing.JTextField Lösung;
private javax.swing.JButton Mal;
private javax.swing.JButton Minus;
private javax.swing.JButton Plus;
private javax.swing.JInternalFrame jInternalFrame1;
private javax.swing.JLabel jLabel1;
// End of variables declaration
}
[/Java]
Zusätzlich passiert 0 Wenn ich auf + Klicke im Feld, weiß nich weiter :/ Muss dazu sagen, ist mein erstes eigenes Projekt^^
Hier nochmal das Projekt:
 

Anhänge

  • Rechner.zip
    15,9 KB · Aufrufe: 4

Andy0805

Mitglied
gar keine IN NB kommt nur, das er die Variable in Lösung nicht findet, obwohl sie in Plus deklariert ist. Wenn ich auf + klick passiert gar nix.
 
G

Gast2

Gast
Du meinst die Variable
Code:
LösungV
in
Code:
LösungActionPerformed
?
Ja da hat Netbeans recht. Du hast die Variable in PlusActionPerformed deklariert, daher ist die auch nur in der Methode gültig. Leg die dir als Instanzvariable an.

PS:
Schau dir auch mal die Code Conventions an.
 

Andy0805

Mitglied
ok habe Z147 an Z178 kopiert. Jetzt gibts keine Fehler mehr. Jedoch passiert immernoch nichts, wenn ich auf + KLicke im Programm :/ Wieso das nicht?
 
S

SlaterB

Gast
> int LösungV = Integer.parseInt(Aufgabe.getText() + Integer.parseInt(Aufgabe2.getText()));
hier sind die Klammern falsch, der zweite int geparst wird zum ersten Text als String hin zugefügt,
also z.B. 55 + 44 zu 5544 gerechnet,
das funktioniert aber durchaus, kein Fehler zu erkennen,
nur wenn du nichts oder was anderes als Zahlen eintippst passiert nichts außer einer Exception
 

Andy0805

Mitglied
ich tippe ins 1. feld 5 ein und is zweite 6. Klicke auf + und das wars, nix mehr. und das aus 55+44 5544 wird sollte auch nicht sein^^ da sollte 99 rauskommen >.<


@ EikeB: Ich habs einfach unter die Autmatischen deklarationen gemacht mit nem private davor, wiel wenn ichs davor hab, kommt nen CompilerFehler, warum auch immer. Hab die KLammer zu der Class eine Zeile tiefer gemacht
 

Andy0805

Mitglied
Jo die Klammer ist falsch...
Integer.parseInt((Aufgabe.getText()) + (Integer.parseInt(Aufgabe2.getText())));

Ich seh da allerdings nichts, wäre das so besser?
 
S

SlaterB

Gast
schreibe in deinen Listener
System.out.println("Hello World");
und außerdem noch in den Konstruktor
System.out.println("Konstruktor");

wenn du nirgendwo Programmausgaben siehst musst du dir auf irgendeine Weise erst eine Konsole besorgen,

wenn du kein 'Hello World' siehst, dann wird der Listener nicht aufgerufen,
wenn die Ausgabe kommt, dann achte mal darauf ob auch rein zufällig zig Zeilen irgendeiner Exception..

------

aber kann eigentlich nicht sein,
noch eher für möglich halte ich einen Anzeigefehler, ist das Lösung-Textfeld überhaupt zu sehen, mit Rand?
anderseits ja von GUI-Builder automatisch generiert, sollte auch richtig sein..,
kannst du irgendwo, im Konstruktor oder so mit setText() erfolgreich Text setzen?


die gesamte Struktur mit JInternalFrame ist ziemlich aufgeblasen, ein Weg wäre Vereinfachung,
aber wenn das dann funktioniert hilft das beim ursprünglichen Problem auch nicht unbedingt

habe jetzt tatsächlich das ganze Zip geladen, danke für Umlaute in Variablennamen die als 'Lösung' hier ankommen,
mehr als diese Klasse ist nicht vorhanden, kein JFrame usw., läuft wohl nur in Netbeans als Form, was immer das ist,
nun gut, dann habe ich alles getan was ich tun kann,
solange es kein in freien Java per main-Methode überall ausführbares Programm ist kann jeder Fehler drin sein der mag
 

Andy0805

Mitglied
das da ist netbeans: Welcome to NetBeans Damit habe ich das erstellt. Und ja, das Textfeld ist zu sehen.

das mit den Ausgaben mache ich mal

und wo sollte ich da eine main methode reinbauen? Ich will das ja nicht ausführen in dem SInne. Und sry, für die Umlaute. Aber ICh hab einfach das Projekt abgespeichert und den Projekt Ordner hochgeladen.
Wenn du noch Vorschläge hast, sags mir bitte.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Java erkennt eine deklarierte Variable nicht Java Basics - Anfänger-Themen 2
M java kennt Variable nicht? Java Basics - Anfänger-Themen 2
M Java aufrufen, obwohl nicht in PATH-Variable eingetragen Java Basics - Anfänger-Themen 11
J Java long- in int-Variable umwandeln Java Basics - Anfänger-Themen 6
M Variable Felderanzahl Java Java Basics - Anfänger-Themen 10
Aprendiendo [JAVA-Syntax] (int... variable) bei einem Konstruktor Java Basics - Anfänger-Themen 8
C CMD Befehl + Variable im Java-Code ausführen Java Basics - Anfänger-Themen 8
R weiß jemand warum Java diesen Fehler ausspuckt? "Variable might not hav been initialized" Java Basics - Anfänger-Themen 4
I Variablen Wie initialisiert man in Java eine Variable ohne das Setzen von 0 oder einer anderen Zahl? Java Basics - Anfänger-Themen 8
Devil0s Java variable in Variablenname Java Basics - Anfänger-Themen 21
U Java neue Variable für jeden Schleifendurchgang Java Basics - Anfänger-Themen 11
N Per Java in ein HTML-Suchfeld eine Variable reinschreiben Java Basics - Anfänger-Themen 4
-horn- Variable von PHP an Java übergeben und Ergebnis zurückgeben? Java Basics - Anfänger-Themen 10
D Variable per Link an Java übergeben Java Basics - Anfänger-Themen 8
S Daten in eine Variable in einem anderen Java File schreiben Java Basics - Anfänger-Themen 10
G Java Microedition TExtfeld in Variable einlesen Java Basics - Anfänger-Themen 4
G variable felder in java? geht das? Java Basics - Anfänger-Themen 4
H .java Dateien in Eclipse einbinden und ausführen Java Basics - Anfänger-Themen 1
onlyxlia Schlüsselworte Was meint man mit "einen Typ" in Java erstellen? Java Basics - Anfänger-Themen 2
O Java Kara geschweifte Klammern Java Basics - Anfänger-Themen 2
richis-fragen Mausrad logitech kann links und rechts klick wie in java abragen. Java Basics - Anfänger-Themen 15
XWing Java Klssenproblem Java Basics - Anfänger-Themen 4
R Umgebungsvariable java -cp gibt immer Java-Hilfe... Java Basics - Anfänger-Themen 3
farbenlos Csv Datei in Java einlesen Java Basics - Anfänger-Themen 18
F TableModelListener: java.lang.ArrayIndexOutOfBoundsException: 132 Java Basics - Anfänger-Themen 3
G Java 8 - Support-Ende Java Basics - Anfänger-Themen 7
T Java Weihnachtsbaum + Rahmen Java Basics - Anfänger-Themen 1
N Will mit Java anfangen Java Basics - Anfänger-Themen 13
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
M Java Iterator Verständnisfrage Java Basics - Anfänger-Themen 6
M Java Mail Programm Java Basics - Anfänger-Themen 4
Sniper1000 Java 391 für Windows Java Basics - Anfänger-Themen 37
JaZuDemNo Java im Studium Java Basics - Anfänger-Themen 7
E Java Programm zur anzeige, ob Winter- oder Sommerzeit herrscht Java Basics - Anfänger-Themen 62
I QR code in Java selber generieren Java Basics - Anfänger-Themen 5
V Java-Ausnahmebehandlung: Behandlung geprüfter Ausnahmen Java Basics - Anfänger-Themen 1
krgewb Java Streams Java Basics - Anfänger-Themen 10
A Überwältigt von der komplexen Java Welt Java Basics - Anfänger-Themen 29
O Mehrfachvererbung auf Spezifikations- und Implementierungsebene in Java. Interfaces Java Basics - Anfänger-Themen 19
John_Sace Homogene Realisierung von Generics in Java ? Java Basics - Anfänger-Themen 19
P Meldung aus Java-Klasse in Thread an aufrufende Klasse Java Basics - Anfänger-Themen 1
R mit Java API arbeiten Java Basics - Anfänger-Themen 9
P JDK installieren Probleme bei der Java-Installation Java Basics - Anfänger-Themen 8
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
Timo12345 JNLP File mit Java öffnen Java Basics - Anfänger-Themen 2
S Video Editierung mit Java.._ Java Basics - Anfänger-Themen 2
F Einstelungen in Java - CursorBlinkRate Java Basics - Anfänger-Themen 10
A PHP $_POST["name"] in Java Java Basics - Anfänger-Themen 3
vivansai21 Is there a oneliner to create a SortedSet filled with one or multiple elements in Java? Java Basics - Anfänger-Themen 9
Athro-Hiro Weißes Bild in Java erstellen Java Basics - Anfänger-Themen 3
Arjunreddy Can someone please tell me how to use a debugger in BlueJ(a Java environment) Java Basics - Anfänger-Themen 1
M Java assoziationen (UML) Java Basics - Anfänger-Themen 8
H Excel-Tabellen mit Java erstellen Java Basics - Anfänger-Themen 4
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
P Wie kann ich in meinem Java Programm etwas dauerhaft speichern? Java Basics - Anfänger-Themen 5
H Nutzt Eclipse alle CPU-Threads beim Ausführen von Java-Programmen? Java Basics - Anfänger-Themen 4
xXGrowGuruXx Java einstieg, leichte sache 0 verstanden Java Basics - Anfänger-Themen 7
A java.sql.SQLException: Data type mismatch. Java Basics - Anfänger-Themen 1
H Java-Programm zur Ausgabe von Zuständen Java Basics - Anfänger-Themen 80
N Java Spiel Figur auf dem Hintergrundbild bewegen. Java Basics - Anfänger-Themen 11
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
N Java Taschenrechner hat Jemand vlt einen Tipp dafür wie ich jetzt die buttons verbinden kann und das Ergebnis auf dem textfield anzeigen lassen kann Java Basics - Anfänger-Themen 13
A Lerngruppe Java Java Basics - Anfänger-Themen 2
G Help me in the Java Program Java Basics - Anfänger-Themen 2
L Java- Vererbung Java Basics - Anfänger-Themen 4
LimDul Suche Java Stream Tutorial Java Basics - Anfänger-Themen 2
_so_far_away_ Ich möchte Java lernen Java Basics - Anfänger-Themen 11
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
V Bild per Java Script austauschen Java Basics - Anfänger-Themen 7
MoxMorris this Keyword in Java Java Basics - Anfänger-Themen 14
D Wie kann man in Java nach Arrays auf Duplikate prüfen Java Basics - Anfänger-Themen 12
wolei JAVA Zeitdifferenz feststellen. Java Basics - Anfänger-Themen 4
DiyarcanZeren Rekursion in Java Java Basics - Anfänger-Themen 5
wolei Java generic interface in a generic class Java Basics - Anfänger-Themen 6
monsterherz Ablauf der Erstellung eines Java Programmes Java Basics - Anfänger-Themen 17
monsterherz Circle.java:5: error: <identifier> expected Java Basics - Anfänger-Themen 2
julian-fr Wie kann ich am besten Java lernen? Java Basics - Anfänger-Themen 17
A Java-Properties und -RessourceBundles Java Basics - Anfänger-Themen 5
lrnz22 Java-Basics-Aufgabe Java Basics - Anfänger-Themen 8
R Java kann nicht installiert werden Java Basics - Anfänger-Themen 8
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
G In ein java Dokument Ton einbinden Java Basics - Anfänger-Themen 1
C was heisst es wenn java ']' erwartet ? Java Basics - Anfänger-Themen 2
KeinJavaFreak Erste Schritte Programm "Java(TM) Platform SE binary " nicht vorhanden Java Basics - Anfänger-Themen 1
KeinJavaFreak Erste Schritte Java "Executable Jar File" nicht vorhanden Java Basics - Anfänger-Themen 1
melisax Java 2D-Array Tabelle Java Basics - Anfänger-Themen 4
melisax Java Array Wert an bestimmtem Index angeben Java Basics - Anfänger-Themen 14
J Java Testklasse Java Basics - Anfänger-Themen 5
P Java Selenium . Parameterized.Parameters erzeugt eine Fehlermeldung Java Basics - Anfänger-Themen 14
W Java-Code mit Array Java Basics - Anfänger-Themen 14
W Java-Code Java Basics - Anfänger-Themen 2
P BeforeEach AfterEach werden nicht ausgeführt. Java / Selenium Java Basics - Anfänger-Themen 4
A Wie führe ich eine Batch-Datei von meiner Java-Anwendung aus? Java Basics - Anfänger-Themen 18
W Java code- TicTac toe Java Basics - Anfänger-Themen 51
Ostkreuz Java Docs Java Basics - Anfänger-Themen 9
R Java boolean Unterschied " == " und " = " Java Basics - Anfänger-Themen 3
D Java Programm mit Batch-Datei starten Java Basics - Anfänger-Themen 32
W Java-code Java Basics - Anfänger-Themen 8
W Java-code Java Basics - Anfänger-Themen 9

Ähnliche Java Themen

Neue Themen


Oben