Если вам не нужно много способов пользовательского поведения, JOptionPane поможет вам сэкономить время. Он заботится о размещении и локализации параметров OK / Cancel и является быстрым и грязным способом показа настраиваемого диалогового окна без необходимости определять свои собственные классы. В большинстве случаев параметр «message» в JOptionPane является String, но вы также можете передать JComponent или массив JComponents.
Пример:
JTextField firstName = new JTextField();
JTextField lastName = new JTextField();
JPasswordField password = new JPasswordField();
final JComponent[] inputs = new JComponent[] {
new JLabel("First"),
firstName,
new JLabel("Last"),
lastName,
new JLabel("Password"),
password
};
int result = JOptionPane.showConfirmDialog(null, inputs, "My custom dialog", JOptionPane.PLAIN_MESSAGE);
if (result == JOptionPane.OK_OPTION) {
System.out.println("You entered " +
firstName.getText() + ", " +
lastName.getText() + ", " +
password.getText());
} else {
System.out.println("User canceled / closed the dialog, result = " + result);
}