If-else-Bedingung innerhalb eines JButton ActionEvent
Habe ich gerade hochgeladen, meine Fortschritte in das Programm. Bitte haben Sie einen Blick und sehen, was fehlt es. Auch, ignorieren Sie bitte die Lahmen Witz die Streicher in es, während Sie gerade dabei sind. Es kann von diesem link heruntergeladen werden: http://www.mediafire.com/?n0sp8v22egfsx7t
Hinweis, dass ich NetBeans einfach das Programm.
Bearbeitet:
Wie verhindere ich das ActionEvent-Methode des JButton aus der re-Iteration von der Lektüre der ersten Ebene der verschachtelten if-else-Bedingung, sobald die innerste Zeile oder der letzten Zeile des codes gelesen?
Auch, als zusätzliche Frage, wie kann ich aufgefordert, das system zu wählen, zwischen Entscheidungen, so wörtlich, verzweigen sich von den anderen einmal eine Wahl gegeben? Anscheinend, was ich mache, war einfach verbinden Sie diesen block mit strings zusammen und nicht verzweigen Sie aus erscheinen somit iteriert werden, sobald eine neue block-codes angezeigt werden, die in Verbindung zu dem vorherigen code-block angezeigt. .
Snippet:
//Strings of text displayed on the JTextArea is shown here
//prompting to choose between two options: example, left or right
jButton1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
jButton1actionPerformed(e);
}
});
private void jButton1actionPerformed(ActionEvent e)
{
if(jRadioButton1.isSelected())
{
//Display strings of text as response to the choice left
//Another options to choose from here:, example, up or down
JTextArea.setText("You've chosen: " );
JTextArea.append("Now choose between: ");
if (jRadioButton1.isSelected())
{
JTextArea.append("From first choice, choose between: ");
//stop from here
}
else if (jRadioButton2.isSelected())
{
//same as above
}
}
if (jRadioButton2.isSelected())
{
//Same as above
}
}
- Habe ein code-Beispiel?
- Wie poste ich einen screenshot hier?
- Sie kann nicht genug rep posten Bilder. Posten Sie den code aus der Aktion, die Methode als text (oder snippet)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden
JTextField.setText("")
Wann immer Sie reinigen wollen, einen text-Bereich.Regardind das Hauptproblem - Post code.
Wenn ich verstehe, was du fragst, das ist der springende Punkt, der einen
if ... else if ... else if ... (etc) ... else
- Anweisung. Wenn eine der Bedingungen erfüllt ist, keiner der anderen Blöcke ausgeführt wird. So wie es aussieht, die Sie gerade brauchen, um hinzuzufügenelse
s passend zu Ihremif
s. Zum Beispiel:Allerdings gibt es ein problem mit Ihrem code. Warum sind Sie die Prüfung zwei mal, wenn
jRadioButton1
ausgewählt ist? Nach der ersten wenn-Anweisung, die Sie bereits wissen, ist es ausgewählt und müssen nicht erneut zu prüfen.JPanel
. Mit einemCardLayout
wird auch hilfreich sein.Denke ich, wenn Sie Fragen, wie zu stoppen die Handlung auch, wenn Sie auf die Bedingung, alles, was Sie tun müssen, ist fügen Sie eine return-Anweisung, um Ihren code. Zum Beispiel, wenn button 1 ist gedrückt, display-Meldung, dann fügen Sie eine return-Anweisung, wird der code verlassen, dass die Methode und nicht immer zu den anderen if-Anweisung.
Vielleicht möchten Sie so etwas wie ein Hash oder Liste zur Speicherung Ihrer Auswahl und jedes mal, wenn eine Wahl gemacht wird, fügen Sie es der Liste. Dann finden Sie immer die Letzte Wahl, um unsere Letzte Element der Liste. Ich bin mir nicht ganz klar, was du versuchst zu machen hier, aber vielleicht geben Ihnen einige Ideen.
Schrieb ich ein kleines Programm hier, die hat 2 radiobuttons und einen submit. Wenn Sie auf Absenden klicken, schreibt es den text in das Fenster basierend auf den radio-button-Auswahl.
Überprüfen Sie heraus die Java-Tutorials verwenden Sie die Tasten. Speziell schauen die, Wie zu verwenden, Radio-Buttons, Abschnitt, um zu sehen, ob das wirft kein Licht auf, wie Sie es entwerfen.
Wie zu verwenden, Radio-Buttons