Java :: Aufgabe #9 :: Lösung #5

5 Lösungen Lösungen öffentlich
#9

Würfelspiel(Random) mit GUI

Fortgeschrittener - Java von Jurom - 23.10.2012 um 12:38 Uhr
Das Programm soll ein einfaches Glücksspiel simulieren.
Lassen Sie 2 Zufallszahlen zwischen 1-6 ausgeben, die höhere Zahl gewinnt.
Wiederholen sie das Würfeln solange, bis der Anwender gewinnt.

Erstellen Sie ein GUI für das Programm, nach dem angehängtem Lösungslayout.
Fertiges Programm
#5
vote_ok
von kollar (340 Punkte) - 14.12.2019 um 16:14 Uhr
Quellcode ausblenden Java-Code
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class Wuerfel {
	public static void main(String[] args) {

		FrWuerfel frwuerfel = new FrWuerfel("Würfel Spiel");
	}
}

class FrWuerfel extends JFrame implements ActionListener {
	JLabel lbl = new JLabel("Die Größere Zahl gewinnt!");
	JButton button = new JButton("würfeln");
	JTextField tfUser = new JTextField(10);
	JLabel lblAusgabe = new JLabel("computer:");
	JTextField tfAusgabe = new JTextField(10);
	JLabel lblKonklusion = new JLabel();

	JPanel pText = new JPanel();
	JPanel pUser = new JPanel();
	JPanel pAusgabe = new JPanel();
	JPanel pKonklusion = new JPanel();

	FrWuerfel(String titel) {
		super(titel);
		setVisible(true);
		setSize(300, 300);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setLocationRelativeTo(null);
		setLayout(new FlowLayout(FlowLayout.RIGHT, 20, 20));

		tfUser.setEditable(false);
		tfAusgabe.setEditable(false);
		tfUser.setHorizontalAlignment(JTextField.RIGHT);
		tfAusgabe.setHorizontalAlignment(JTextField.RIGHT);

		button.addActionListener(this);

		pText.add(lbl);
		pUser.add(button);
		pUser.add(tfUser);
		pAusgabe.add(lblAusgabe);
		pAusgabe.add(tfAusgabe);

		pKonklusion.add(lblKonklusion);

		add(pText);
		add(pUser);
		add(pAusgabe);
		add(pKonklusion);

		lblKonklusion.setText("                 ");
	}

	public void randomZahlen() {
		Random ran = new Random();
		int zahlUser = ran.nextInt(6) + 1;
		int zahlComp = ran.nextInt(6) + 1;
		tfUser.setText(Integer.toString(zahlUser));
		tfAusgabe.setText(Integer.toString(zahlComp));

		if (zahlUser > zahlComp) {
			lblKonklusion.setText("Sie haben gewonnen");
		}
		if (zahlUser < zahlComp) {
			lblKonklusion.setText("Der Computer hat gewonnen");
		}
		if (zahlUser == zahlComp) {
			lblKonklusion.setText("unentschieden");
		}
	}

	@Override
	public void actionPerformed(ActionEvent e) {

		randomZahlen();

	}
}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben
2102187

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.