Cuando el usuario hace clic en un botón, quiero mostrar un formulario emergente que debe tener al menos dos JTextFields y dos JLabels, por lo que no es posible usar JOptionPane.showInputDialog
.Formulario simple java emergente con al menos dos campos
14
A
Respuesta
39
Al menos debe considerar uno de los métodos JOptionPane
como showInputDialog()
o showMessageDialog()
.
Adición: La opción de usar JOptionPane
depende más de la idoneidad de la modalidad, que del número de componentes que se muestran. Consulte también How to Make Dialogs.
Adición: Como se señala en un comentario de @camickr, puede establecer el foco en un componente particular utilizando el enfoque discutido en Dialog Focus, citado here.
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();
}
});
}
}
Cuestiones relacionadas
- 1. jqGrid: Inhabilitar campos de formulario al editar
- 2. Ignorar campos al enviar el formulario
- 3. Validación del formulario Symfony2 basada en dos campos
- 4. validar dos campos con jQuery Validar
- 5. Error prohibido al enviar el formulario PHP simple
- 6. formulario django con múltiples campos de archivo
- 7. MVC Validación de formulario en varios campos
- 8. formulario simple bootstrap horizontal y en línea
- 9. webrat autofilling campos de formulario
- 10. Adición de campos adicionales al formulario de registro django
- 11. ¿Es Java 7 al menos tan estable como Java 6?
- 12. Concatenar dos campos
- 13. Rails atributos anidados: requieren al menos dos registros
- 14. Un texto JSON debe contener al menos dos octetos
- 15. printf, sprintf imprime al menos dos lugares decimales
- 16. Enviar campos de entrada de formulario agregados con javascript
- 17. traer ventana emergente al frente
- 18. jQuery - Inhabilitar campos de formulario
- 19. ¿Cómo hacer un formulario emergente modal simple usando jquery y html?
- 20. Formulario PHP simple: Adjunto al correo electrónico (código de golf)
- 21. UIAlertView con dos campos de texto y dos botones
- 22. ¿Cómo publicar un formulario con muchos campos con jQuery?
- 23. Formulario HTML con campos de entrada uno al lado del otro
- 24. Cómo validar un formulario con múltiples casillas de verificación para que al menos uno marque
- 25. Monitoreo simple de servidores con Java
- 26. C# params con al menos un valor
- 27. Ignorar campos de entrada en el formulario enviar con jQuery
- 28. campo Hash serializado y formulario simple
- 29. Magento Validar formulario Sólo ciertos campos
- 30. mejor (o al menos buena) guía de anotaciones Java
Lo sentimos acerca de la confusión inicial entre respuesta y ejemplo. – trashgod
¿Cómo puedo recuperar la entrada? – nunos
He elaborado más arriba y he añadido un enlace al tutorial. – trashgod