2012-02-17 24 views
5

Ésta es una crosspost al hilo en JavaRanch (incluye algunas imágenes): http://www.coderanch.com/t/567472/GUI/java/Optimal-solution-creating-multiple-dialogJOptionPane vs JDialog

Estoy tratando de desarrollar una aplicación de escritorio oscilación simple donde me imagino un montón de salto diferente de diálogo en torno a buscar usuarios entrada. Tendría que presentar etiquetas, campos de texto, campos de contraseña, combobxes, casillas de verificación, etc. en varias ventanas de diálogo.

Por ejemplo: la creación de la base de datos de primera mano, la creación de la primera cuenta de administrador, la adición de usuarios, el cambio de cuentas de usuario, etc.

He JOptionPane un entendimiento de que se utiliza para crear simples rápidos & fáciles de diálogo modales. Realmente me gustaría saber por qué uno elegiría uno sobre otro en este caso. Cuál es más preferible utilizar: JOptionPane vs. JDialog

También podría usar algunos indicadores sobre cómo se debe diseñar e implementar adecuadamente.

Gracias.

+0

he aquí un buen tutorial para principiantes sobre cómo usarlos: http://www.thepcwizard.in/2012/05/working-with-jdialog-and-joptionpane-in.html – ThePCWizard

Respuesta

2

Echa un vistazo http://docs.oracle.com/javase/tutorial/uiswing/components/dialog.html prácticamente tiene todo lo que pueda necesitar.

Según lo entiendo, JOptionPane es ideal para lo que puede hacer, pero no se puede cambiar la funcionalidad más allá de eso (no es fácil). Es mejor heredar JDialog si quieres crear tus propios cuadros de diálogo personalizados.

8

Aquí hay una declaración que encontré en el sitio web de Java que dice un punto clave acerca de la diferencia entre los dos.

How to make Dialogs

un cuadro de diálogo puede ser modal. Cuando un cuadro de diálogo modal es visible, bloquea la entrada del usuario a todas las demás ventanas del programa. JOptionPane crea JDialogs que son modales. Para crear un cuadro de diálogo no modal, debe usar la clase JDialog directamente.

Parece que usaría JOptionPane si desea que el usuario tenga que hacer una elección y cerrar el cuadro antes de volver a la pantalla principal. Si usa un cuadro de JDialog, pueden hacer clic en él y regresar a la pantalla principal sin tomar ninguna decisión. Por ejemplo, supongamos que desea hacer que un usuario elija la cantidad de resultados antes de hacer clic en enviar, no le gustaría que puedan hacer clic en esa ventana y hacer clic en enviar. Utilizaría JOptionPane para obligarlos a seleccionar un valor primero antes de volver a enviar.

+0

+1 - punto importante para lo que él quiere hacer –