Konsolenscanner startet nicht durch Aufruf von Actionlistener

Timme++

Neues Mitglied
Hallo,
ich programmiere gerade für ein Schulprojekt ein Programm welches am Ende ein Diagramm ausgeben soll.
Ich habe aber gerade ein Problem mit dem Scanner welcher einige vom Nutzer eingegebene Werte in der Konsole auslesen soll.
Wird dieser von dem Actionlistener der ersten Klasse aufgerufen steht dort (in der Konsole), dass das Programm laufen muss damit eine Eingabe erfolgen kann(Can only enter input while your programm is running).
Also die Konsole öffnet sich aber es erscheint nur der Text der ersten Konsolenausgabe(Eins:).
Es funktioniert alles wie es soll wenn ich die Methode per Hand oder durch eine andere Klasse aufrufe.


Klasse mit dem actionlistener:
Java:
import java.awt.Window;
import javax.swing.*;
import java.awt.*;
//Event brauchen wir für das Ereigniss, wenn ein Button geklickt wird
import java.awt.event.*;

public class Start extends JFrame{
private JButton button1;
private JButton button2;
private JButton button3;
private JPanel panelButton;
private JLabel oben;
private JLabel anzeige;
  public Start(){
   super("Fenster");
   setLocation(300,300);
   setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   //Das BorderLayout ist mal das erste - später fügen wir noch ein GridLayout im Westen hinzu
   getContentPane().setLayout(new BorderLayout(5,5));
   //Buttons erzeugen
   button1 = new JButton("Einen Graphen zeichnen");
   button2 = new JButton("Zwei Graphen zeichnen");
   button3 = new JButton("Hilfe");
    //Panels erzeugen auf einem GridLayout
   panelButton = new JPanel(new GridLayout(3,1));
   //Auf Panel Buttons packen
   panelButton.add(button1);
   panelButton.add(button2);
   panelButton.add(button3);
   //Listener für Buttons
   addButtonListener(button1);
   addButtonListener(button2);
   addButtonListener(button3);
   //Labels erzeugen
   oben = new JLabel("Start");
   //Label zentrieren
   oben.setHorizontalAlignment(JLabel.CENTER);
   anzeige = new JLabel("Button klicken");
   //Labels auf Frame packen (direkt auf das BorderLayout)
   getContentPane().add(BorderLayout.NORTH, oben);
   getContentPane().add(anzeige);
   //Panels auf Frame packen (das panelButton hat ein GridLayout, dass jetzt in den WestBereich des BorderLayouts kommt)
   getContentPane().add(BorderLayout.WEST, panelButton);
   pack();
   setVisible(true);
   }
    private void addButtonListener(JButton b){
        b.addActionListener(new ActionListener(){
           
         public void actionPerformed(ActionEvent ae){
           eingabe(ae.getActionCommand());
           }
    
        });
     
}
    private void eingabe(String a){
         if(a=="Einen Graphen zeichnen"){
            EinenGraphen gra1 = new EinenGraphen();
            gra1.eingabe();
            
            
            }
           
         if(a=="Zwei Graphen zeichnen"){
             ZweiGraphen gra2 = new ZweiGraphen();
            }
        
         if(a=="Hilfe"){
             Hilfe hilfe = new Hilfe();
            
            }
           
   }
}

Klasse mit dem Scanner.
Java:
import java.util.Scanner;


public class EinenGraphen
{
    public double eins;
    public double zwei;
    public double drei;
    public double vier;
   
    private Scanner s = new Scanner (System.in);
   
    public void eingabe()
    {
       
        System.out.print('\u000C');
        System.out.println("Eins:");
        eins = s.nextDouble();
                     
        System.out.println("Zwei:");
        eins = s.nextDouble();
                     
        System.out.println("Drei:");
        eins = s.nextDouble();
                       
        System.out.println("Vier:");
        eins = s.nextDouble();
                      
        Rechnung r1 = new Rechnung();
        r1.iterativ(); //später werte übergeben
    }

   }
 

Robat

Top Contributor
Wird dieser von dem Actionlistener der ersten Klasse aufgerufen steht dort (in der Konsole), dass das Programm laufen muss damit eine Eingabe erfolgen kann(Can only enter input while your programm is running).
Also die Konsole öffnet sich aber es erscheint nur der Text der ersten Konsolenausgabe(Eins:).
Das Problem kann ich nicht reproduzieren .. welche IDE nutzt du?

BTW:
-Strings vergleicht man Inhaltlich mit equals und nicht mit == .. also a.equals("Text");
- Es ist an der Stelle nicht nötig von JFrame zu erben .. du willst ja das JFrame nur nutzen und nicht um Funktionalität erweitern. Du würdest ja auch nicht für jeden String eine eigene Klasse erstellen ;)
 

Timme++

Neues Mitglied
Ich nutze Bluej, das ist von der schule vorgegeben.
Hab es jetzt ohne Vererbung umgeschrieben und habe immer noch den gleichen Fehler.

Java:
import java.awt.Window;
import javax.swing.*;
import java.awt.*;
//Event brauchen wir für das Ereigniss, wenn ein Button geklickt wird
import java.awt.event.*;
import java.util.Scanner;
public class Start extends JFrame{
private JButton button1;
private JButton button2;
private JButton button3;
private JPanel panelButton;
private JLabel oben;
private JLabel anzeige;
  public Start(){
   super("Fenster");
   setLocation(300,300);
   setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   //Das BorderLayout ist mal das erste - später fügen wir noch ein GridLayout im Westen hinzu
   getContentPane().setLayout(new BorderLayout(5,5));
   //Buttons erzeugen
   button1 = new JButton("Einen Graphen zeichnen");
   button2 = new JButton("Zwei Graphen zeichnen");
   button3 = new JButton("Hilfe");
    //Panels erzeugen auf einem GridLayout
   panelButton = new JPanel(new GridLayout(3,1));
   //Auf Panel Buttons packen
   panelButton.add(button1);
   panelButton.add(button2);
   panelButton.add(button3);
   //Listener für Buttons
   addButtonListener(button1);
   addButtonListener(button2);
   addButtonListener(button3);
   //Labels erzeugen
   oben = new JLabel("Start");
   //Label zentrieren
   oben.setHorizontalAlignment(JLabel.CENTER);
   anzeige = new JLabel("Button klicken");
   //Labels auf Frame packen (direkt auf das BorderLayout)
   getContentPane().add(BorderLayout.NORTH, oben);
   getContentPane().add(anzeige);
   //Panels auf Frame packen (das panelButton hat ein GridLayout, dass jetzt in den WestBereich des BorderLayouts kommt)
   getContentPane().add(BorderLayout.WEST, panelButton);
   pack();
   setVisible(true);
   }
    private void addButtonListener(JButton b){
        b.addActionListener(new ActionListener(){
           
         public void actionPerformed(ActionEvent ae){
           eingabe(ae.getActionCommand());
           }
    
        });
     
}
    private void eingabe(String a){
         if(a=="Einen Graphen zeichnen"){
            Scanner s = new Scanner (System.in);
            System.out.print('\u000C');
            System.out.println("Eins:");
            double eins = s.nextDouble();
                     
            System.out.println("Zwei:");
            double zwei = s.nextDouble();
                     
            System.out.println("Drei:");
            double drei = s.nextDouble();
                       
            System.out.println("Vier:");
            double vier = s.nextDouble();
                      
            Rechnung r1 = new Rechnung();
            r1.iterativ(); //später werte übergeben
            }
           
         if(a.equals("Zwei Graphen zeichnen")){
             ZweiGraphen gra2 = new ZweiGraphen();
            }
        
         if(a.equals("Hilfe")){
             Hilfe hilfe = new Hilfe();
            
            }
           
   }
}
 

Robat

Top Contributor
Zu BlueJ kann ich nichts sagen - damit kenne ich mich nicht aus und halte auch nicht viel davon.
Mit Intellij jedenfalls treten keine Fehler auf.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Jar Datei startet unter Linux nicht Java Basics - Anfänger-Themen 3
nbergmann Eclipse: Lehrbuch-Programm startet nicht Java Basics - Anfänger-Themen 22
nbergmann Eclipse: Lehrbuch-Programm startet nicht Java Basics - Anfänger-Themen 7
P Installation JRE 8u321 startet, geht aber nicht weiter Java Basics - Anfänger-Themen 1
S Java Client-je nach Heap Size Größe startet Applikation oder nicht Java Basics - Anfänger-Themen 4
T Main startet nicht bei vorgegebenen Code Java Basics - Anfänger-Themen 41
T HelloWorld startet nicht Java Basics - Anfänger-Themen 14
Kirby.exe Programm startet nachdem es compiled wurde nicht Java Basics - Anfänger-Themen 17
V Vererbung Eclipse startet das Programm nicht und rechnet nicht Java Basics - Anfänger-Themen 6
J JavaEditor kompiliert aber startet nicht Java Basics - Anfänger-Themen 1
das_leon Erste Schritte Eclipse startet nicht Java Basics - Anfänger-Themen 1
L Compiler-Fehler AndroidStudio Projekt startet nicht mehr!!! Java Basics - Anfänger-Themen 2
U Klassen IntelliJ14.1.1 Ultimate startet eine Main-Klasse NICHT MEHR Java Basics - Anfänger-Themen 0
C Programm JAR startet nicht - Could not create the Java Virtual Machine Java Basics - Anfänger-Themen 4
Ruvok Executable Jar File startet nicht Java Basics - Anfänger-Themen 3
I .jar startet nicht nach Export Java Basics - Anfänger-Themen 27
S Anwendung Startet nur in Vergangenheit Java Basics - Anfänger-Themen 11
M Eclipse startet nicht mehr (eclipse.exe beendet sich selbst)? Java Basics - Anfänger-Themen 5
B eclipse startet nicht Java Basics - Anfänger-Themen 1
A Erste Schritte JAR Datei startet nicht Java Basics - Anfänger-Themen 1
J Compiler-Fehler Cmd startet compiler Java Basics - Anfänger-Themen 1
M jar Datei startet nicht Java Basics - Anfänger-Themen 2
M datei startet unter windows 7 nicht Java Basics - Anfänger-Themen 12
C Jar Datei startet nicht nach Export mit Eclipse Juno Java Basics - Anfänger-Themen 2
M Webstart Startet nicht Fehler Java Basics - Anfänger-Themen 5
H Eclipse startet nicht (PATH Problem?) Java Basics - Anfänger-Themen 12
R JAR File startet nur per Doppelklick aber nicht per CMD Java Basics - Anfänger-Themen 4
B Erste Schritte Eclipse startet nicht Java Basics - Anfänger-Themen 8
K Java editor kompiliert aber startet nicht Java Basics - Anfänger-Themen 5
Z Applet startet nicht bei Domain mit Umlaut Java Basics - Anfänger-Themen 2
M cmd datei startet nicht. Java Basics - Anfänger-Themen 14
1 jar-Programm startet nicht Java Basics - Anfänger-Themen 6
B Programm startet in IDE,aber nicht in Windows Java Basics - Anfänger-Themen 4
M cmd datei startet nicht Java Basics - Anfänger-Themen 15
P Input/Output Konsolenanwendung - Sie startet nicht Java Basics - Anfänger-Themen 11
W Programm startet nicht Java Basics - Anfänger-Themen 3
T Mediathek.jar startet nicht Java Basics - Anfänger-Themen 19
A Programm startet nicht! Java Basics - Anfänger-Themen 13
Haubitze_Broese Methode am ende nochmal startet? Java Basics - Anfänger-Themen 8
I Eclipse startet nicht richtig Java Basics - Anfänger-Themen 4
R Applet startet nicht Java Basics - Anfänger-Themen 10
M Mein Externes Programm startet nicht Java Basics - Anfänger-Themen 13
I Applet startet nicht Java Basics - Anfänger-Themen 2
E Executable JAR startet nicht - Hilfe ! Java Basics - Anfänger-Themen 10
M jdownloader startet nicht JAVA fehler Java Basics - Anfänger-Themen 4
H Eclipse: Programm startet nicht, wie Fehler feststellen? Java Basics - Anfänger-Themen 5
B Thread startet anderen Thread neu Java Basics - Anfänger-Themen 7
K JAVA-Anwendung startet nicht Java Basics - Anfänger-Themen 7
D Java Applet startet im Browser nicht Java Basics - Anfänger-Themen 9
T Programm startet nicht wg. Tabelle? Java Basics - Anfänger-Themen 19
P *.jar startet nicht auf Mac OS X Java Basics - Anfänger-Themen 5
G Bluej startet nicht Java Basics - Anfänger-Themen 5
P Eclipse startet kein Applet Java Basics - Anfänger-Themen 6
A jar startet nicht Java Basics - Anfänger-Themen 6
D jar - gui mal startet es mal nur ein leeres Fenster warum? Java Basics - Anfänger-Themen 4
R jar startet nicht Java Basics - Anfänger-Themen 5
R Thread startet nicht, verstehe nicht warum Java Basics - Anfänger-Themen 2
G Applet mit Lib startet nicht Java Basics - Anfänger-Themen 2
schroedi Wie startet man eine JAVA EE Projekt Java Basics - Anfänger-Themen 22
G Apache Tomcat startet nicht da JAVA_HOME nicht definiert Java Basics - Anfänger-Themen 3
F Jar datei startet nicht Java Basics - Anfänger-Themen 6
S Jar startet nur über Konsole Java Basics - Anfänger-Themen 4
S mehr als 1 Bild im Jar --> Jar startet nicht Java Basics - Anfänger-Themen 2
G Eclipse startet automatisch Fenster. Java Basics - Anfänger-Themen 4
H Programm erfolgreich compiliert, startet aber nicht? Java Basics - Anfänger-Themen 8
ven000m Eclipse startet nicht mehr nach Deinstalltion von alten JRE Java Basics - Anfänger-Themen 6
R Eclipse startet nicht mehr Java Basics - Anfänger-Themen 10
Bierhumpen Startet for Schleife nicht! Java Basics - Anfänger-Themen 12
M Programm(JFrame) mit Netbeans erstellt.startet nicht! Java Basics - Anfänger-Themen 4
F Java Applikation ProjectX startet sehr langsam Java Basics - Anfänger-Themen 3
H JAR startet nicht Java Basics - Anfänger-Themen 9
N jar-Datei startet nicht Java Basics - Anfänger-Themen 14
R Programm startet nicht Java Basics - Anfänger-Themen 2
D [Swing] Warum startet mein Progamm nicht? Java Basics - Anfänger-Themen 14
A applet startet nicht im webbrowser Java Basics - Anfänger-Themen 5
H appletviewer startet nicht. Java Basics - Anfänger-Themen 13
C SWT-Programm startet nicht: NoClassDefFoundError Java Basics - Anfänger-Themen 6
G jar-File startet zu langsam? Java Basics - Anfänger-Themen 9
A Signierte Exe Datei funktioniert nicht mehr Java Basics - Anfänger-Themen 1
A Signierte Exe Datei funktioniert nicht mehr Java Basics - Anfänger-Themen 3
C my_table.setRowSelectionAllowed(true) funktioniert nicht; Java Basics - Anfänger-Themen 0
B Warum funktioniert die Lösung von CodeGym aber meine nicht? Java Basics - Anfänger-Themen 3
P Wo NUR (!) JRE v18 oder v21 herunterladen? Also nicht volles JDK Java Basics - Anfänger-Themen 1
J shuffle cards wird nicht ausgeführt. Java Basics - Anfänger-Themen 2
J JTextField -> CaretPos bei SelectionStart() setzten nicht bei SelectionEnd() Java Basics - Anfänger-Themen 20
W Java-PRogramm liest als EXE-File Nicht USB, jedoch aus NetBeans Java Basics - Anfänger-Themen 45
I Webservice funktioniert nicht Java Basics - Anfänger-Themen 5
C Abbruch einer Schleife mit break, meine Übung funktioniert nicht richtig Java Basics - Anfänger-Themen 4
SarahXyy Ergebnisse stimmen nicht überein? Java Basics - Anfänger-Themen 11
thomas55 Erste Schritte Modul läuft in IntelliJ, nicht in NetBeans Java Basics - Anfänger-Themen 11
G Nicht ausführbares JAR, externe jars mit einbinden Java Basics - Anfänger-Themen 7
S Erstes Programm: Hallo Welt funktioniert nicht. Java Basics - Anfänger-Themen 3
O Obfuscateter Code lässt sich nicht ausführen? Java Basics - Anfänger-Themen 7
A "Hello World"-Programm läuft nicht Java Basics - Anfänger-Themen 16
G Regex greift nicht richtig Java Basics - Anfänger-Themen 4
G JTable den angezeigten WERT nicht den Wert aus dem Model ausgeben. Java Basics - Anfänger-Themen 3
G JTable Header ausgeblendete (width = 0) nicht per mouseDragged aufziehen. Java Basics - Anfänger-Themen 9
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
K Warum wird mir auf der Konsole des Servers nicht "xxxx" angezeigt (Server/Client) Java Basics - Anfänger-Themen 4
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben