Wo soll die Methode hin?

con0815

Aktives Mitglied
Den Quellcode habe ich bei Pastbin hochgeladen.
Ich habe Probleme mit der Methode vergleich();

Ich weiß nicht wo ich diese implementieren soll/muss. Vielleicht bin ich auch ganz auf dem Holzweg.

Ich wollte mit mit dem Beispiel was eine Art Schere Stein Papier ist einfach mal genau das Einsetzen der Methoden üben. Was halt nicht geklappt hat

[Java] package com.sodev.pandotchi; import java.awt.BorderLayout; import javax.swin - Pastebin.com

Kann mir jemand auf die Sprünge helfen wie ich das mit der Methode machen muss?
Andere Methoden klappen ja auch.

Gruß
 

DuffCola

Aktives Mitglied
Sorry, aber ich glaube so kann dir hier keiner wirklich weiterhelfen, versuch den Quellcode mal auf das wichtigste zu kürzen.
Ich verstehe auch nicht genau, was dein Problem ist?
 

frankyv

Mitglied
Hallöchen, ich hab dein Programm etwas abgeändert, so dass es nun tun sollte, was du vor hattest.
Den Thread hab ich rauskommentiert, weil du den nicht brauchst.
Dein Programm soll ja jedesmal reagieren, wenn der Benutzer einen Button drückt, deshalb kommen die Methodenaufrufe (auch vergleich()) alle in die entsprechenden Action Listener.
Das Layout hab ich nicht angepasst - das überlasse ich dir.

Happy coding



Java:
import java.awt.BorderLayout;
import java.awt.Component;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
import javax.swing.border.EmptyBorder;
 
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import java.util.Timer;
import java.util.TimerTask;
 
import javax.swing.JButton;
import javax.swing.JLabel;
 
public class SchStPa extends JFrame implements ActionListener {
       /* private GUI gui;
 
        public SchStPa(GUI gui) {
                this.gui = gui;
        }*/
       
        public void panRand() {
                Random rand = new Random();
                int i;
                i = (rand.nextInt(3));
                switch(i) {
                case 0:
                        comp_auswahl = "Schere";
                        break;
                case 1:
                        comp_auswahl = "Stein";
                        break;
                case 2:
                        comp_auswahl = "Papier";
                        break;
                }
        }
        
        public void change_Result(){
        	lblNewLabel.setText(auswahl);
        	lblComputerErgebnis.setText(comp_auswahl);
        	lblGewonnenHat.setText("Gewonnen hat:" +gewinner);
        }
        
        private JPanel contentPane;
        private JButton btn_schere;
        private JButton btn_Stein;
        private JButton btn_Papier;
        public String auswahl;
        public String comp_auswahl;
        
        //private String wahl;
        private JLabel lblDuHast;
        private JLabel lblNewLabel;
        private JPanel panel;
        private JPanel panel_1;
        private JPanel panel_2;
        private JPanel panel_3;
        private JPanel panel_4;
        private JLabel lblGewonnenHat;
        private String gewinner;
		private JLabel lblComputerHat;
		private JLabel lblComputerErgebnis;
		private JPanel panel_test;
		
        public SchStPa() {
                setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                setBounds(100, 100, 300, 300);
                contentPane = new JPanel();
                contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
                setContentPane(contentPane);
                contentPane.setLayout(new BorderLayout(0, 0));
               
                panel = new JPanel();
                contentPane.add(panel, BorderLayout.NORTH);
               
                btn_schere = new JButton("Schere");
                panel.add(btn_schere);
                btn_schere.setActionCommand( "schere" );
               
                btn_Stein = new JButton("Stein");
                panel.add(btn_Stein);
                btn_Stein.setActionCommand( "stein" );
               
                btn_Papier = new JButton("Papier");
                panel.add(btn_Papier);
                btn_Papier.setActionCommand( "papier" );
               
                panel_1 = new JPanel();
                contentPane.add(panel_1, BorderLayout.CENTER);
                panel_1.setLayout(new BorderLayout(0, 0));
               
                panel_2 = new JPanel();
                panel_1.add(panel_2, BorderLayout.NORTH);
                
                panel_test = new JPanel();
                panel_1.add(panel_test, BorderLayout.SOUTH);
               
                lblDuHast = new JLabel("Du hast:");
                panel_2.add(lblDuHast);
               
                lblNewLabel = new JLabel(auswahl);
                panel_2.add(lblNewLabel);
               
                panel_3 = new JPanel();
                panel_1.add(panel_test, BorderLayout.SOUTH);
                lblComputerHat = new JLabel("Computer hat:");
                panel_test.add(lblComputerHat);
                lblComputerErgebnis = new JLabel(comp_auswahl);
                panel_test.add(lblComputerErgebnis);
                
                
                panel_4 = new JPanel();
                panel_1.add(panel_4, BorderLayout.CENTER);
                panel_4.setLayout(new BorderLayout(0, 0));
               
                lblGewonnenHat = new JLabel("Gewonnen hat:" +gewinner);
                panel_4.add(lblGewonnenHat, BorderLayout.SOUTH);
               
                btn_schere.addActionListener(new ActionListener() {
                        @Override
                        public void actionPerformed(ActionEvent arg0) {
                                auswahl = "Schere";
                                panRand();
                                vergleich();
                                change_Result();
                        }
 
                });
               
                btn_Stein.addActionListener(new ActionListener() {
                        @Override
                        public void actionPerformed(ActionEvent arg0) {
                                auswahl = "Stein";
                                panRand();
                                vergleich();
                                change_Result();
                        }
 
                });
               
                btn_Papier.addActionListener(new ActionListener() {
                        @Override
                        public void actionPerformed(ActionEvent arg0) {
                                auswahl = "Papier";
                                panRand();
                                vergleich();
                                change_Result();
                        }
 
                });
               
                /*zeahler();
                panRand();*/
        }
        /*public void zeahler() {
                Timer repeat = new Timer();
                TimerTask go = new TimerTask() {
                        @Override
                        public void run() {
 
                                SwingUtilities.invokeLater(new Runnable() {
                                        @Override
                                        public void run() {
                                                lblNewLabel.setText(auswahl);
                                                lblComputerErgebnis.setText(comp_auswahl);
                                                lblGewonnenHat.setText("Gewonnen hat:" +gewinner);
                                               
                                        }
                                }
 
                                );
                        }
                };
                repeat.schedule(go, 1000, 500);
        }*/
 
        public void vergleich() {
                if (auswahl == comp_auswahl) {
                        gewinner = "Gleichstand";
                } else if ((auswahl.equals("Schere")) && (comp_auswahl.equals("Stein"))) {
                        gewinner = "Dein Panda";
                } else if ((auswahl.equals("Schere")) && (comp_auswahl.equals("Papier"))) {
                        gewinner = "Du!";
                } else if ((auswahl.equals("Stein")) && (comp_auswahl.equals("Papier"))) {
                        gewinner = "Dein Panda";
                } else if ((auswahl.equals("Stein")) && (comp_auswahl.equals("Schere"))) {
                        gewinner = "Du!";
                } else if ((auswahl.equals("Papier")) && (comp_auswahl.equals("Schere"))) {
                        gewinner = "Dein Panda";
                } else if ((auswahl.equals("Papier")) && (comp_auswahl.equals("Stein"))) {
                        gewinner = "Du!";
                }
        }
       
 
        @Override
        public void actionPerformed(ActionEvent e) {
               
        }
       
       
        public static void main(String[] args) {
                SwingUtilities.invokeLater(new Runnable() {
                        public void run() {
                                try {
                                        SchStPa frame = new SchStPa();
 
                                        frame.setVisible(true);
                                } catch (Exception e) {
                                        e.printStackTrace();
                                }
                        }
               
                });
        }
 
}
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
Ü Methode soll Quadrat aus der Summer zurückgeben Java Basics - Anfänger-Themen 10
T Methode soll etwas ausrechnen und zurückgeben (klappt nd) hat wer eine Idee? Java Basics - Anfänger-Themen 11
berserkerdq2 Wann soll ich den Stream schließen, wenn ich das in einer Methode habe? Java Basics - Anfänger-Themen 8
J Problem mit einer Methode die gewissen Inhalt einer Array löschen soll Java Basics - Anfänger-Themen 9
J Problem mit einer Methode, die beliebig viele Objekte in Array speichern soll Java Basics - Anfänger-Themen 6
kazzam94 Methode soll Array von Boolean zurückgeben Java Basics - Anfänger-Themen 5
E Methode soll andere Methode der selben Klasse aufrufen Java Basics - Anfänger-Themen 28
scratchy1 Wie deklariert man eine Methode, die ein Objekt zurückgeben soll? Java Basics - Anfänger-Themen 22
P Methode soll Variable einer anderen Klasse ändern. Wie? Java Basics - Anfänger-Themen 1
kilopack15 Methode soll int-Array zurückgeben Java Basics - Anfänger-Themen 2
TheMenox Methoden Bestimmung an welche Methode eine andere Methode ihren Wert weitergeben soll Java Basics - Anfänger-Themen 35
C Ein Button soll Focus rausfinden und Methode starten Java Basics - Anfänger-Themen 9
S Generische Methode soll Objekte als Parameter erlauben die bestimmtes Interface implementieren^ Java Basics - Anfänger-Themen 9
M Warum soll man die Finanlize Methode nicht überschreiben und aufrufen? Java Basics - Anfänger-Themen 2
S Methoden Methode soll String zurückgeben Java Basics - Anfänger-Themen 11
P methode soll int zurückgeben Java Basics - Anfänger-Themen 13
P Vererbung Basisklasse soll eigene Methode benutzen Java Basics - Anfänger-Themen 38
M Methode soll zwei unterschiedliche primitives zurückgeben Java Basics - Anfänger-Themen 7
A Objekt soll Methode seines Erzeugers aufrufen Java Basics - Anfänger-Themen 15
zilti Methode will nicht tun, was sie soll Java Basics - Anfänger-Themen 20
S Methode soll ein neues Objekt vom Typ Class XYZ Java Basics - Anfänger-Themen 7
P Methode soll nichts erzeugen bei fehlenden Angaben Java Basics - Anfänger-Themen 6
richis-fragen JTable bei aktivieren einer Zelle soll Text selektiert werden. Java Basics - Anfänger-Themen 24
DrahtEck Schleife soll wieder da anfangen wo ich es möchte ! Java Basics - Anfänger-Themen 17
Com.Roter Wie soll ich lernen? Java Basics - Anfänger-Themen 17
T code so schreiben das er von sich selber anpasst (code soll die anzahl aller bustaben bestimmen) Java Basics - Anfänger-Themen 16
T float soll durch schleife die größte mögliche Zahl herausfinden, Ausgabe ist aber "Infinity" Java Basics - Anfänger-Themen 1
I aus 2 random zahlen soll nur die ungerade summe der beiden genommen werden. Java Basics - Anfänger-Themen 13
H Erste Schritte Nach einer Zahl n soll n Mal der String untereinander ausgegeben werden Java Basics - Anfänger-Themen 3
berserkerdq2 Warum soll ich shuffle nutzen, um bei Rückgabewert Collection eine Liste zurückzugeben? Java Basics - Anfänger-Themen 3
A String split funktioniert nicht, wenn mehr als 1 Ziffer vor dem Zeichen steht nach dem er trennen soll? Java Basics - Anfänger-Themen 4
M Bei nach oben scrollen soll Seite aktualisiert werden (Userscript mit Javascript) Java Basics - Anfänger-Themen 10
R App soll selbstständig reagieren, anstatt via Models Java Basics - Anfänger-Themen 0
A Wenn eine Zahl durch 7 teilbar ist, soll statt der Zahl ein ‘*‘ angezeigt werden. java? Java Basics - Anfänger-Themen 47
C Ein Algorithmus soll schneller werden Java Basics - Anfänger-Themen 24
K Ein Objekt Auto kennt den Inhalt seines links und rechtsstehenden Autos, wie soll man das ermöglichen Java Basics - Anfänger-Themen 2
HeiTim Brauche Hilfe soll ein nummeriertes Feld ausgeben lassen Java Basics - Anfänger-Themen 17
O Ich habe einen String und soll mit matches schauen, ob ein Buchstabe zu einer geraden ANzahl im String vorkommt, wie soll das gehen? Java Basics - Anfänger-Themen 7
O Ich ahbe einen char und diesen soll ich bei .matches prüfen, also ob der char in meiner Zeichenkette vorhanden ist, wie mache ich das? Java Basics - Anfänger-Themen 9
B Java Programm soll mit Python kommunizeren Java Basics - Anfänger-Themen 1
J Kreis soll die gleiche Fläche wie das Rechteck haben wie mache ich das? Java Basics - Anfänger-Themen 3
MichelNeedhelp Brauche zu diesem Labyrinth ein Skript? Der Hamster soll im Urzeigersinn das ganze Labyrinth abgehen und wieder an seinem Ursprungsplatz sein. Java Basics - Anfänger-Themen 40
F Java Programm, das kleine Buchstaben in einem String zählen soll und bei großen Buchstaben oder Sonderzeichen abbrechen soll. Java Basics - Anfänger-Themen 5
S Scanner soll Groß-/ Kleinschreibung ignorieren Java Basics - Anfänger-Themen 2
E Division von BigInteger soll Gelitkommazahl liefern Java Basics - Anfänger-Themen 46
M Unterklasse soll nicht alle Methoden erben Java Basics - Anfänger-Themen 3
S Vergleichen ob der Integer der benutzt eingeben werden soll überhaupt ein int ist Java Basics - Anfänger-Themen 1
C Ganzzahlige Werte in Boolean ausgeben und überprüfen ob Primzahl oder nicht, wenn es keine Primzahl ist soll es die Primfaktorzerlegung ausgeben Java Basics - Anfänger-Themen 4
E Kreis soll eine Raupe darstellen Java Basics - Anfänger-Themen 37
V Erste Schritte for-Schleife; Ausgabe soll alle 5 Sekunden erfolgen. Java Basics - Anfänger-Themen 4
H Koordinateneingabe im 2D Array soll true/false zurückgeben Java Basics - Anfänger-Themen 5
D Etwas unsicher wie es weitergehen soll Java Basics - Anfänger-Themen 2
N Bewegtes Objekt soll sich um eine Parallele bewegen Java Basics - Anfänger-Themen 0
B Button soll sowohl auf Klicken als auch auf die Enter-Taste reagieren Java Basics - Anfänger-Themen 9
B Derzeit JSF - Projekt, später soll MobileApp folgen Java Basics - Anfänger-Themen 5
V Vererbung Subklasse soll Superklasse verändern Java Basics - Anfänger-Themen 2
T Random soll Zufallszahl beibehalten. Java Basics - Anfänger-Themen 11
C Objekt soll ein Array sein. Java Basics - Anfänger-Themen 15
N Ich weiß nicht, wie ich meinen Code richtig designen soll und komme nicht weiter Java Basics - Anfänger-Themen 4
K Zufalsszahl soll sich nicht wiederholen Java Basics - Anfänger-Themen 9
W Eigener Iterator soll mehrdimensionales Array durchlaufen Java Basics - Anfänger-Themen 4
J Kopierte Datei soll alte ersetzen. Java Basics - Anfänger-Themen 6
A Variablen Main Klasse soll auf eine andere Klasse zugreifen Java Basics - Anfänger-Themen 3
I Programm tut nicht was es soll :) Java Basics - Anfänger-Themen 5
Tommy135 Klassen jComboBox macht nicht was sie soll Java Basics - Anfänger-Themen 4
D JButton soll Farbe von JTextfield ändern Java Basics - Anfänger-Themen 5
R While-Schleife macht nicht was sie soll Java Basics - Anfänger-Themen 24
S Variable in JTextField soll immer um 5 zunehmen Java Basics - Anfänger-Themen 8
S JButton soll für bestimmte Zeit verschwinden Java Basics - Anfänger-Themen 5
J-Gallus Ein Getter bekommt eine anderen Type als er Return soll Java Basics - Anfänger-Themen 9
L Bei falscher Eingabe soll NaN zurückgegeben werden, Rückgabetyp jedoch double Java Basics - Anfänger-Themen 3
W drawLine(...) - Linie soll nur begrenzt lang sein Java Basics - Anfänger-Themen 9
I Fenster A soll Fenster B schliessen Java Basics - Anfänger-Themen 5
A Variablen Variable soll ihren Wert nach Initialisierung nicht mehr ändern Java Basics - Anfänger-Themen 2
M Exception soll Werte mitgeliefert bekommen Java Basics - Anfänger-Themen 12
K Objekt soll Anwendung über Änderungen informieren Java Basics - Anfänger-Themen 8
X Einfache Frage; wie soll ich die spezielle float var speichern? Java Basics - Anfänger-Themen 2
M Panel erstellen, welches ein Control erhält. Ausgabe soll über einen Stream erfolgen. Java Basics - Anfänger-Themen 0
K Variablenname soll der Inhalt vom String sein Java Basics - Anfänger-Themen 2
K Wie lange kann / soll das dauern? Java Basics - Anfänger-Themen 6
R Button soll Wert 1 in Variable schreiben Java Basics - Anfänger-Themen 4
J Interface Bubblesort soll Arrays beliebiger Referenztypen sortieren können. Java Basics - Anfänger-Themen 5
T Array soll Werte aufnehmen Java Basics - Anfänger-Themen 2
B Anwender soll mathematische Funktion eingeben können, Einfachster Fnktionsplotter Java Basics - Anfänger-Themen 4
E Erste Schritte [Noob-Frage] Meine If-Abfrage macht nicht, was sie soll... Java Basics - Anfänger-Themen 2
M Weiß nicht, wie ich es nennen soll. Java Basics - Anfänger-Themen 1
T Wenn Schaltjahr ist, soll Februar, einen Tag mehr haben, GUI mit combobox Java Basics - Anfänger-Themen 4
H Erste Schritte Ergebniss soll kleiner als 1000 sein Java Basics - Anfänger-Themen 4
W Erste Schritte Timer soll jede Sekunde Label aktualisieren Java Basics - Anfänger-Themen 5
T BufferReader soll datei mehrmals lesen Java Basics - Anfänger-Themen 13
M CompareTo soll Datum sortieren Java Basics - Anfänger-Themen 2
S Maus soll Programm nicht verlassen Java Basics - Anfänger-Themen 1
M Java Datei soll sich selbst löschen Java Basics - Anfänger-Themen 8
V Was soll alles in den Konstruktor? Java Basics - Anfänger-Themen 3
E Einfache For-Schleife macht nicht was sie soll Java Basics - Anfänger-Themen 2
Sogomn Wie soll ich weiermachen? Java Basics - Anfänger-Themen 4
E Erste Schritte Array soll kleiner werdenden String erstellen Java Basics - Anfänger-Themen 5
A scan.nextLine() - Wenn man zu lange nichts macht, soll etwas passieren Java Basics - Anfänger-Themen 3
C Erste Schritte Boolsche For-Schleife soll Ausgaben mitzählen Java Basics - Anfänger-Themen 8
S Ein Rechteck soll an einer Seite gespiegelt werden. Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben