¿Hay alguna forma de crear entradas múltiples en JOptionPane.showInputDialog
en lugar de solo una entrada?Entrada múltiple en JOptionPane.showInputDialog
55
A
Respuesta
109
Sí. Sabes que puedes poner Object
en el parámetro Object
de la mayoría de JOptionPane.showXXX methods
, y con frecuencia ese Object
es JPanel
.
En su situación, tal vez usted podría utilizar un JPanel
que tiene varias JTextFields
en ella:
import javax.swing.*;
public class JOptionPaneMultiInput {
public static void main(String[] args) {
JTextField xField = new JTextField(5);
JTextField yField = new JTextField(5);
JPanel myPanel = new JPanel();
myPanel.add(new JLabel("x:"));
myPanel.add(xField);
myPanel.add(Box.createHorizontalStrut(15)); // a spacer
myPanel.add(new JLabel("y:"));
myPanel.add(yField);
int result = JOptionPane.showConfirmDialog(null, myPanel,
"Please Enter X and Y Values", JOptionPane.OK_CANCEL_OPTION);
if (result == JOptionPane.OK_OPTION) {
System.out.println("x value: " + xField.getText());
System.out.println("y value: " + yField.getText());
}
}
}
26
esta es mi solución
JTextField username = new JTextField();
JTextField password = new JPasswordField();
Object[] message = {
"Username:", username,
"Password:", password
};
int option = JOptionPane.showConfirmDialog(null, message, "Login", JOptionPane.OK_CANCEL_OPTION);
if (option == JOptionPane.OK_OPTION) {
if (username.getText().equals("h") && password.getText().equals("h")) {
System.out.println("Login successful");
} else {
System.out.println("login failed");
}
} else {
System.out.println("Login canceled");
}
+4
Solución simple y rápida. Muchas gracias. Muy útil. – DeanMWake
Cuestiones relacionadas
- 1. Validación de entrada de usuario para JOptionPane.showInputDialog
- 2. Entrada y salida múltiple del instrumento VST
- 3. Selectores CSS de entrada múltiple [tipo]
- 4. Java: múltiples líneas de texto usando JOptionPane.showInputDialog (null, "Texto");
- 5. Línea de comando de Python - Entrada de línea múltiple
- 6. Crear mapa BizTalk con esquema de entrada múltiple
- 7. de entrada múltiple cadena de palabras a través de scanf()
- 8. ¿Cómo crear una entrada de línea múltiple con tkinter?
- 9. JOptionPane - cuadro de diálogo de entrada programa
- 10. jQuery carácter múltiple reemplazar
- 11. Inserción múltiple múltiple de SQL
- 12. JOptionPane Entrada a int
- 13. Cómo limitar elementos máximos en una entrada múltiple (<input type = "file" multiple />)
- 14. ¿Cómo confirmo una entrada de línea múltiple en la línea de comandos?
- 15. ¿Subprocesamiento múltiple en MySQL?
- 16. Opción múltiple en WinForms
- 17. Múltiple búsqueda en ThenFetch
- 18. Herencia múltiple en java
- 19. Herencia múltiple en PHP
- 20. Selección múltiple en TreeView
- 21. Herencia múltiple en C#
- 22. Despacho múltiple en C++
- 23. Selección múltiple en Vim
- 24. arrendamiento múltiple en Hibernate
- 25. Autenticación múltiple en Yesod?
- 26. Alineación múltiple en TextView?
- 27. ¿Tuple múltiple a dos pares en Python?
- 28. C getopt valor múltiple
- 29. Convierta una cadena de entrada de usuario en mayúscula Java
- 30. JOptionPane personalizar entrada
+1, y voy a tirar en un enlace a Dialog Focus (http://tips4java.wordpress.com/2010/03/14/dialog-focus/) que incluye una clase simple para establecer el foco en un campo de texto que puede serle útil. – camickr
@Marco: consulte los [Tutoriales de Swing] (http://download.oracle.com/javase/tutorial/uiswing/components/index.html) y, en particular, la sección sobre [JPanels] (http://download.oracle.com/javase/tutorial/uiswing/components/panel.html) –