Einfaches Popup-Formular mit mehreren Feldern
Frage:
Gibt es eine Möglichkeit zum Erstellen? ein Popup-Formular mit mehreren Feldern ohne Verwendung von JOptionPane.showInputDialog()?
Antwort:
Erwägen Sie die Verwendung von JOptionPane-Methoden
Während die Verwendung von JOptionPane-Methoden zunächst aufgrund der Annahme, dass sie auf eine Eingabezeile beschränkt sind, abgelehnt werden kann, bietet sie Optionen wie showInputDialog() und showMessageDialog(), die benutzerdefinierte Formulare unterstützen können.
Alternativer Ansatz
Berücksichtigen Sie für eine hochgradig individuelle Lösung den folgenden Code:
package gui; import java.awt.EventQueue; import java.awt.GridLayout; import javax.swing.*; /** @see https://stackoverflow.com/a/3002830/230513 */ class JOptionPaneTest { private static void display() { String[] items = {"One", "Two", "Three", "Four", "Five"}; JComboBox<String> combo = new JComboBox<>(items); JTextField field1 = new JTextField("1234.56"); JTextField field2 = new JTextField("9876.54"); JPanel panel = new JPanel(new GridLayout(0, 1)); panel.add(combo); panel.add(new JLabel("Field 1:")); panel.add(field1); panel.add(new JLabel("Field 2:")); panel.add(field2); int result = JOptionPane.showConfirmDialog(null, panel, "Test", JOptionPane.OK_CANCEL_OPTION, JOptionPane.PLAIN_MESSAGE); if (result == JOptionPane.OK_OPTION) { System.out.println(combo.getSelectedItem() + " " + field1.getText() + " " + field2.getText()); } else { System.out.println("Cancelled"); } } public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { @Override public void run() { display(); } }); } }
Zusätzliche Überlegungen:
Das obige ist der detaillierte Inhalt vonWie erstelle ich ein Popup-Formular mit mehreren Feldern in Java ohne JOptionPane.showInputDialog()?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!