JOptionPane/Popup mit GUI

sgtpro

Mitglied
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)

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:

Joose

Top Contributor
Habe schon ein bisschen rumprobiert, aber mit dem JOptionPane funktioniert nichts. Sobald ich das Popup benutzt habe, schließt sich der GUI.

Ist auch logisch. Durch System.exit(0); sagst du das Programm soll sich beenden.
Warum hast du diese Zeile hinzugefügt? Was erwartest du dir von dieser Zeile?

PS: Code bitte imer in Code-Tags packen, danke! :)
[code=java] ... dein codel ...[/code]
 

sgtpro

Mitglied
Oke ja ergibt fast sinn :D
Hab meinen kumpel (der die klasse gmacht hat) schon gefragt, was das exit soll :D
Jetzt funktioniert es jedenfalls ^^
Danke für die schnelle Antwort.
Das mit dem code merk ich mir.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Nitrogames Variablen Variable aus JOptionPane Abfrage in Array einfügen Java Basics - Anfänger-Themen 4
nbergmann The type JOptionPane is not accessible. Java Basics - Anfänger-Themen 4
nbergmann Wo ist javax.swing.JOptionPane gespeichert? Java Basics - Anfänger-Themen 4
T jOptionPane zum schließen von Fenster, wie "Ja" und "Nein" anstatt Yes und No Java Basics - Anfänger-Themen 2
chocobear26 Interface JOptionPane - Dialog_Fenster zeigt immer vorherige Eingabe an. Java Basics - Anfänger-Themen 4
M Arrays mit mehreren Werten über JOptionPane initialisieren Java Basics - Anfänger-Themen 12
M JOptionPane Fehler bei "Abbrechen" des Fensters Java Basics - Anfänger-Themen 10
OSchriever Exception für Abbrechen-Schaltfläche JOptionpane Java Basics - Anfänger-Themen 9
S JOptionPane komplett leeres Fenster Java Basics - Anfänger-Themen 4
Dawinartor Klassen Zeilenumbruch in JOptionPane.showMessageDialog Java Basics - Anfänger-Themen 8
N javax swing JOptionPane Hilfe Java Basics - Anfänger-Themen 3
T JOptionPane mit eigenem Icon Java Basics - Anfänger-Themen 4
C JOptionPane tritt manchmal bei Plugin in den Hintergrund Java Basics - Anfänger-Themen 2
das_leon JOptionPane Titel setzen Java Basics - Anfänger-Themen 1
J jOptionPane, Array und negative Zahlen Java Basics - Anfänger-Themen 2
B JOptionPane Java Basics - Anfänger-Themen 5
S JOptionPane mit Schleife in einem Ausgabefenster Java Basics - Anfänger-Themen 4
M jOptionPane mit if else Java Basics - Anfänger-Themen 16
K JOptionPane/catch/try/finally/if Java Basics - Anfänger-Themen 9
B JOptionPane Java Basics - Anfänger-Themen 4
N Erste Schritte JOptionPane - zerstörtes Layout Java Basics - Anfänger-Themen 2
D Erste Schritte JOptionPane Java Basics - Anfänger-Themen 7
R Fehler mit JOptionPane Java Basics - Anfänger-Themen 3
A Fehler bei der Speicherung von JOptionPane-Eingaben Java Basics - Anfänger-Themen 4
N Problem mit JOptionPane und Fenster-Fokus Java Basics - Anfänger-Themen 2
S Bild in JOptionPane Java Basics - Anfänger-Themen 1
L Strings in einem JOptionPane farbig Java Basics - Anfänger-Themen 2
E JOptionPane.showMessageDialog Fehler Java Basics - Anfänger-Themen 1
R Text Pane Aktualisierung erst nach JOptionPane Java Basics - Anfänger-Themen 10
J while (eingabe == "0") eingabe = JOptionPane.showInputDialog("...") Java Basics - Anfänger-Themen 5
S Konsolenausgabe ales JOptionPane? Java Basics - Anfänger-Themen 5
Z Darstellungsfehler mit JOptionPane Java Basics - Anfänger-Themen 2
L Interface JOptionPane Umwandlung Java Basics - Anfänger-Themen 10
L Anderes Layout für JOptionPane? Java Basics - Anfänger-Themen 6
S JoptionPane mit Umbruch Java Basics - Anfänger-Themen 21
Eileen Brüche addieren in Zwei Klassen mit JOptionPane Java Basics - Anfänger-Themen 4
S JOptionPane.showMessageDialog Java Basics - Anfänger-Themen 20
M JOptionPane 2 Angaben in ein Dialogfeld Java Basics - Anfänger-Themen 7
H JOptionPane YES Option mit Folge? Java Basics - Anfänger-Themen 2
P Input/Output JOptionPane Fehlermeldung Catchen Java Basics - Anfänger-Themen 5
N Grafiken in JOptionPane Java Basics - Anfänger-Themen 3
T Benutzereingabe in form von string wieder ausgeben in JOptionPane Java Basics - Anfänger-Themen 14
B Codeschnipsel-Frage zu JOptionPane Java Basics - Anfänger-Themen 4
D Problem mit meinem ersten JOptionPane - Fatal exception occurred. Program will exit. Java Basics - Anfänger-Themen 6
H Focus auf Textfeld in JOptionPane Java Basics - Anfänger-Themen 2
J JOptionPane wiederholt aufrufen Java Basics - Anfänger-Themen 2
M JOptionPane null on closing with X Java Basics - Anfänger-Themen 6
M GUI JOptionPane - Parameter im Konstruktor festlegen? Java Basics - Anfänger-Themen 5
brunothg Internal JOptionPane Icon ändern Java Basics - Anfänger-Themen 5
J CLOSE in JOptionPane Java Basics - Anfänger-Themen 7
S JOptionPane Java Basics - Anfänger-Themen 29
F Alternative zu JoptionPane Java Basics - Anfänger-Themen 7
M Datentypen JOptionPane Java Basics - Anfänger-Themen 13
D JOptionPane ohne Klick-Aufforderung Java Basics - Anfänger-Themen 9
F jOptionPane (ConfirmDialog) aufrufen Java Basics - Anfänger-Themen 2
E JOptionPane Java Basics - Anfänger-Themen 11
J JOptionPane Datum Eingabe Java Basics - Anfänger-Themen 3
R JOptionPane funktioniert nicht mit Abbrechen Knopf Java Basics - Anfänger-Themen 16
H JOptionPane validieren Java Basics - Anfänger-Themen 3
D nur JOptionPane im Windows Style Java Basics - Anfänger-Themen 3
D Wählfenster(JOptionPane) Java Basics - Anfänger-Themen 3
N Hilfe!!! JOptionPane Java Basics - Anfänger-Themen 12
N javax.swing.JOptionPane einbauen? Java Basics - Anfänger-Themen 9
M Hilfe: JOptionPane.showInputDialog Java Basics - Anfänger-Themen 3
T JOptionPane mit .showInputDialog: Ergebnis abfragen? Java Basics - Anfänger-Themen 2
P JOptionPane.showInputDialog Java Basics - Anfänger-Themen 6
L ParentComponent von JOptionPane Java Basics - Anfänger-Themen 2
X JOptionPane.showMessageDialog(); - Import Befehl? Java Basics - Anfänger-Themen 4
C JOptionPane mit Icon Java Basics - Anfänger-Themen 5
G Problem mit JOptionPane. Java Basics - Anfänger-Themen 7
P JOptionPane mit Inhalt? Java Basics - Anfänger-Themen 2
M HTML in JOptionPane-Dialog aber keine Links Java Basics - Anfänger-Themen 6
A JOptionPane -> abbrechen -> NullPointerException Java Basics - Anfänger-Themen 4
M JOptionPane - Dialog Java Basics - Anfänger-Themen 6
C Problem mit JOptionPane.showInputDialog Java Basics - Anfänger-Themen 2
G Schleife mit JOptionPane Java Basics - Anfänger-Themen 6
C JOptionPane in Taskleiste anzeigen Java Basics - Anfänger-Themen 3
G JOptionPane.showInputDialog Java Basics - Anfänger-Themen 2
F JOptionPane selbst programmieren Java Basics - Anfänger-Themen 8
G Problem miT JOptionPane Java Basics - Anfänger-Themen 6
G JOptionPane.TOOL_TIP_TEXT_KEY wie verwendet man es? Java Basics - Anfänger-Themen 4
G JOptionPane wird nicht angezeigt Java Basics - Anfänger-Themen 3
I Problem bei JOptionPane Java Basics - Anfänger-Themen 3
B JOptionPane in vordergrund bringen Java Basics - Anfänger-Themen 2
G JOptionPane zentrieren? Java Basics - Anfänger-Themen 2
M JOptionPane.OK_OPTION abfangen oder disablen? Wie? Java Basics - Anfänger-Themen 3
G JOptionPane Java Basics - Anfänger-Themen 4
P Probleme mit JOptionPane Java Basics - Anfänger-Themen 7
G JOptionPane Java Basics - Anfänger-Themen 6
B JOptionPane und das zweidimensianle Array Java Basics - Anfänger-Themen 2
M StackOverFlow bei JOptionPane? Java Basics - Anfänger-Themen 23
S JOptionPane.showInputDialog nur ein OK Button Java Basics - Anfänger-Themen 3
G JOptionPane Java Basics - Anfänger-Themen 8
D JOptionPane mit eigenem Icon Java Basics - Anfänger-Themen 2
A Bild einfügen in JOptionPane Java Basics - Anfänger-Themen 5
N JOptionPane.showInputDialog gibt null zurück Java Basics - Anfänger-Themen 9
D Thread und JOptionPane -> Problem Java Basics - Anfänger-Themen 6
D jOptionPane OK Button Java Basics - Anfänger-Themen 4
B JOptionPane mit mehr Eingabeflächen Java Basics - Anfänger-Themen 3
G JOptionPane Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben