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

#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
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
#2

von HaraldK (260 Punkte)
- 22.02.2016 um 21:28 Uhr
Das Lösungslayout ist nicht mehr Verfügbar, daher habe ich ein eigenes einfaches Layout dafür erstellt.
Java-Code
Ausgabe: siehe Anhänge

/* @Author H.K. * @Date 22.02.2016 * * Programmbeschreibung: * Würfle eine Zahl zwischen 1 und 6, Darstellung in einem GUI */ import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JButton; import java.awt.Font; import java.awt.event.ActionListener; import java.util.Random; import java.awt.event.ActionEvent; import javax.swing.SwingConstants; import java.awt.Color; public class mainprogramGUI { private static JLabel lblZahl1 = new JLabel(""); private static JLabel lblZahl2 = new JLabel(""); private static JButton btnNewButton = new JButton("W\u00FCrfeln!"); private JFrame frame; private JLabel lblWINNER = new JLabel("Du hast gewonnen!"); private JLabel lblLOOSER = new JLabel("Du hast verloren!"); private JLabel lblDRAW = new JLabel("Gleichstand!"); private final JButton btnReset = new JButton("RESET"); /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { mainprogramGUI window = new mainprogramGUI(); window.frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } public String buttonaufruf() { int min = 1; int max = 6; String randomnumber = randInt(min,max); return randomnumber; } public String randInt(int min, int max) { Random rand = new Random(); int randomNum = rand.nextInt((max - min) + 1) + min; String randomString = Integer.toString(randomNum); return randomString; } /** * Create the application. */ public mainprogramGUI() { initialize(); } /** * Initialize the contents of the frame. */ private void initialize() { frame = new JFrame(); frame.setBounds(100, 100, 450, 300); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().setLayout(null); JLabel lblDuWrfelst = new JLabel("Du w\u00FCrfelst eine "); lblDuWrfelst.setFont(new Font("Tahoma", Font.PLAIN, 14)); lblDuWrfelst.setBounds(72, 56, 130, 14); frame.getContentPane().add(lblDuWrfelst); JLabel lblComputerWrfelt = new JLabel("Computer w\u00FCrfelt eine "); lblComputerWrfelt.setFont(new Font("Tahoma", Font.PLAIN, 14)); lblComputerWrfelt.setBounds(72, 101, 161, 14); frame.getContentPane().add(lblComputerWrfelt); btnNewButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { lblWINNER.setVisible(false); lblLOOSER.setVisible(false); lblDRAW.setVisible(false); String player1 = buttonaufruf(); int intplayer1 = Integer.parseInt(player1); String computer = buttonaufruf(); int intcomputer = Integer.parseInt(computer); lblZahl1.setText(player1); lblZahl1.setVisible(true); lblZahl2.setText(computer); lblZahl2.setVisible(true); if (intplayer1 > intcomputer) { lblWINNER.setVisible(true); } if (intcomputer > intplayer1){ lblLOOSER.setVisible(true); } if (intplayer1 == intcomputer) { lblDRAW.setVisible(true); } } }); btnNewButton.setBounds(110, 184, 89, 23); frame.getContentPane().add(btnNewButton); lblZahl1.setFont(new Font("Tahoma", Font.PLAIN, 14)); lblZahl1.setBounds(225, 56, 46, 14); frame.getContentPane().add(lblZahl1); lblZahl2.setFont(new Font("Tahoma", Font.PLAIN, 14)); lblZahl2.setBounds(225, 101, 46, 14); frame.getContentPane().add(lblZahl2); lblWINNER.setForeground(new Color(0, 128, 0)); lblWINNER.setHorizontalAlignment(SwingConstants.CENTER); lblWINNER.setFont(new Font("Tahoma", Font.BOLD, 16)); lblWINNER.setBounds(134, 11, 166, 23); frame.getContentPane().add(lblWINNER); lblLOOSER.setHorizontalAlignment(SwingConstants.CENTER); lblLOOSER.setForeground(new Color(139, 0, 0)); lblLOOSER.setFont(new Font("Tahoma", Font.BOLD, 16)); lblLOOSER.setBounds(134, 11, 166, 23); frame.getContentPane().add(lblLOOSER); lblDRAW.setHorizontalAlignment(SwingConstants.CENTER); lblDRAW.setForeground(new Color(0, 0, 255)); lblDRAW.setFont(new Font("Tahoma", Font.BOLD, 16)); lblDRAW.setBounds(134, 11, 166, 23); frame.getContentPane().add(lblDRAW); btnReset.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { lblWINNER.setVisible(false); lblLOOSER.setVisible(false); lblDRAW.setVisible(false); lblZahl1.setVisible(false); lblZahl2.setVisible(false); } }); btnReset.setBounds(239, 184, 89, 23); frame.getContentPane().add(btnReset); lblZahl1.setVisible(false); lblZahl2.setVisible(false); lblWINNER.setVisible(false); lblLOOSER.setVisible(false); lblDRAW.setVisible(false); } }
Ausgabe: siehe Anhänge
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1