Hallo,
Ich Programmiere zZ ein Würfelspiel in der Schule.
Das Gui habe ich soweit schon. Nun möchte ich aber, um Spieler zu erstellen z.B. ein Popup benutzen. Nur weiß ich nicht ganz, wie das funktionieren soll.
Habe schon ein bisschen rumprobiert, aber mit dem JOptionPane funktioniert nichts. Sobald ich das Popup benutzt habe, schließt sich der GUI.
Hier mein Programm(Das fett gedruckte ist das problematische)
Die popup klasse:
Danke im Voraus für alle hilfreichen Antworten.
Ich Programmiere zZ ein Würfelspiel in der Schule.
Das Gui habe ich soweit schon. Nun möchte ich aber, um Spieler zu erstellen z.B. ein Popup benutzen. Nur weiß ich nicht ganz, wie das funktionieren soll.
Habe schon ein bisschen rumprobiert, aber mit dem JOptionPane funktioniert nichts. Sobald ich das Popup benutzt habe, schließt sich der GUI.
Hier mein Programm(Das fett gedruckte ist das problematische)
Java:
import java.awt.*;
import javax.swing.*;
import javax.swing.JPanel;
import java.awt.event.*;
import javax.swing.plaf.metal.MetalIconFactory;
public class Gui
{
String würfelbild1;
String würfelbild2;
String würfelbild3;
String würfelicon1;
Image bild;
public void main()
{
JFrame fenster = new JFrame("Wer das liest kann lesen");
fenster.setSize(1300,1036);
fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
fenster.getContentPane();
fenster.setLayout(null);
fenster.setResizable(false);
fenster.setVisible(true);
//panel links
JPanel panel = new JPanel();
panel.setLocation(0,0);
panel.setSize(450,1040);
panel.setLayout(null);
fenster.add(panel);
//knopf für setzen
JButton setzenknopf= new JButton("Einsatz Setzen");
setzenknopf.setSize(450,175);
setzenknopf.setLocation(0,175);
//setzenknopf.setBorders(Color.RED);
setzenknopf.setBackground(new Color(51,204,204));
panel.add(setzenknopf);
//platzhalter mitte links
JLabel platz = new JLabel();
platz.setLocation(0,350);
platz.setSize(450,300);
ImageIcon fear = new ImageIcon("loathing2.jpg");
platz.setIcon(fear);
platz.setBackground(new Color(102,51,0));
platz.setOpaque(true);
platz.setVisible(true);
panel.add(platz);
//große Spielfläche
JPanel wflache = new JPanel();
wflache.setLayout(null);
wflache.setLocation(450,0);
wflache.setSize(850,1040);
wflache.setBackground(new Color(0,102,51));
wflache.setOpaque(true);
wflache.setVisible(true);
fenster.add(wflache);
//WÜrfelknopf
JButton würfelknopf= new JButton("Würfeln");
würfelknopf.setSize(450,175);
würfelknopf.setLocation(0,0);
//würfelknopf.setBackground(new Color(51,204,204));
würfelknopf.setBackground(new Color(255,204,153));
panel.add(würfelknopf);
//Jlabel Würfel
JLabel zeigmirerstenWürfel = new JLabel();
zeigmirerstenWürfel.setSize(60,60);
zeigmirerstenWürfel.setLocation(200,480);
wflache.add(zeigmirerstenWürfel);
JLabel zeigmirzweitenWürfel = new JLabel();
zeigmirzweitenWürfel.setSize(60,60);
zeigmirzweitenWürfel.setLocation(400,480);
wflache.add(zeigmirzweitenWürfel);
JLabel zeigmirdrittenWürfel = new JLabel();
zeigmirdrittenWürfel.setSize(60,60);
zeigmirdrittenWürfel.setLocation(600,480);
wflache.add(zeigmirdrittenWürfel);
ActionListener Würfeln = new ActionListener()
{
public void actionPerformed(ActionEvent e){
Würfel würfel1 = new Würfel();
switch (Würfel.würfeln())
{
case 1: würfelbild1 = "1er.jpg";break;
case 2: würfelbild1 = "2er.jpg";break;
case 3: würfelbild1 = "3er.jpg";break;
case 4: würfelbild1 = "4er.jpg";break;
case 5: würfelbild1 = "5er.jpg";break;
case 6: würfelbild1 = "6er.jpg";break;
}
ImageIcon ersterWürfel = new ImageIcon(würfelbild1);
zeigmirerstenWürfel.setIcon(ersterWürfel);
zeigmirerstenWürfel.setVisible(true);
Würfel würfel2 = new Würfel();
switch (würfel2.würfeln())
{
case 1: würfelbild2 = "1er.jpg";break;
case 2: würfelbild2 = "2er.jpg";break;
case 3: würfelbild2 = "3er.jpg";break;
case 4: würfelbild2 = "4er.jpg";break;
case 5: würfelbild2 = "5er.jpg";break;
case 6: würfelbild2 = "6er.jpg";break;
}
ImageIcon zweiterWürfel = new ImageIcon(würfelbild2);
zeigmirzweitenWürfel.setIcon(zweiterWürfel);
zeigmirzweitenWürfel.setVisible(true);
Würfel würfel3 = new Würfel();
switch (würfel3.würfeln())
{
case 1: würfelbild3 = "1er.jpg";break;
case 2: würfelbild3 = "2er.jpg";break;
case 3: würfelbild3 = "3er.jpg";break;
case 4: würfelbild3 = "4er.jpg";break;
case 5: würfelbild3 = "5er.jpg";break;
case 6: würfelbild3 = "6er.jpg";break;
}
ImageIcon dritterWürfel = new ImageIcon(würfelbild3);
zeigmirdrittenWürfel.setIcon(dritterWürfel);
zeigmirdrittenWürfel.setVisible(true);
}
};
würfelknopf.addActionListener(Würfeln);
Popup.Eingabe(); // problematisch
Popup.Benachrichtigung(); // problematisch
fenster.add(panel);
fenster.setVisible(true);
fenster.setVisible(true);
fenster.setResizable(false);
Die popup klasse:
Java:
import javax.swing.JOptionPane;
public class Popup
{
public Popup()
{
}
public static void Benachrichtigung(){
JOptionPane.showMessageDialog(null,
"Willkommen in Moser´s&Tobi´s Casino! Chuck a Luck ist ein Glückspiel. Glücksspiel kann süchtig machen.",
"Eine Nachricht",
JOptionPane.WARNING_MESSAGE);
System.exit(0);
}
public static void Eingabe()
{
String eingabe = JOptionPane.showInputDialog(null,"Geben Sie Ihren Namen ein",
"Eine Eingabeaufforderung",
JOptionPane.PLAIN_MESSAGE);
System.exit(0);
}
}
Danke im Voraus für alle hilfreichen Antworten.
Zuletzt bearbeitet: