2010-02-04 7 views
6

Hola StackOverflow familiaCómo hacer un buen diseño GUI de Swing de

tengo desarrollar una aplicación Java Swing, pero quiero mejorar el diseño de mis marcos Swing. Busco este problema en Google, pero no puedo encontrar una solución adecuada. Por favor comparte tus experiencias y opiniones con respecto a este tema.

p.s. Tal vez esta pregunta no sea buena para ti, pero es importante para mí y para otros como yo

+0

Explícalo mejor, Please. ¿Qué efecto quieres lograr? – oneat

+3

¿Cuáles son sus necesidades específicas o qué es lo que quiere mejorar? usabilidad? ¿velocidad? ¿mira y siente? ¿otros? – OscarRyz

Respuesta

16

ir a comprar este libro:

http://filthyrichclients.org/images/book.png

Desde la página de descripción:

clientes forrarse son aplicaciones que son tan de gran riqueza gráfica que rezuman fresco. Ellos chupan al usuario desde el principio y se aferran a ellos con un fuerte apretón de emoción. Hacen que el usuario les cuente a sus amigos sobre las aplicaciones.

En resumen, hacen que el usuario realmente disfrute de su experiencia de aplicación. ¿Cuándo fue la última vez que disfrutó utilizando una aplicación de software?

Tal vez necesites más clientes sofisticados en tu vida.

Léelo y comprenda hasta obtener la IU que desee.

:)

5

Joel Spolsky tiene un excelente artículo: User Interface Design for Programmers. No aborda específicamente a Swing, pero explica cómo diseñar interfaces de usuario simples y eficientes para un público que no es un programador.

1

Bueno, te daré mi experiencia. Prefiero SWT & Eclipse en general, simplemente porque se integra mucho mejor y es tan flexible con los puntos de extensión y todo eso, pero a veces aprecio que es exagerado.

Cuando uso swing, casi siempre uso GridBagLayout a menos que la forma sea muy simple. Esto se debe a que la mayoría de las GUI que diseño o experimento contienen muchos elementos que no están necesariamente dispuestos en un flujo o estilo de tabla: gridbaglayout ofrece la capacidad de dibujar el ui de una manera que le gusta a java + permitir cambiar el tamaño si es necesario, o puede evitar que esto suceda.

cosas

específicos que hacen uso de:

GridBagConsts.insets = new Insets(2,2,2,2); 

Esto añade el relleno a las celdas de la GridBagLayout, dándole un aspecto más parecido a un programa diseñado para GTK/MS que algo me tiró juntos.

try 
{ 
    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); 
} catch(Exception e) 
{ 
    System.out.println("Error setting native LAF: " + e); 
} 

Configuración de la apariencia a la del sistema - no soy un fan de cualquiera que sea el tema de orden interna (metal) es y la integración con el sistema es mucho más amigable.

Eso es todo por las reglas duras y rápidas. Cosas que sugiero que busque en:

Aparte de eso, es muy específica de la aplicación y Tendrás que leer sobre el diseño general de la interfaz de usuario. En general, ayuda usar controles y herramientas integradas, es decir, aquellos que se parecen al sistema. La biblioteca de clases Java, por ejemplo, incluye File Choosers: http://java.sun.com/docs/books/tutorial/uiswing/components/filechooser.html, que cuando se configuran en el LAF del sistema aparecen como selectores de Windows o Gnome (-ish). Tomar medidas para familiarizarse con cada otra aplicación, a su vez, hará que su aplicación sea más fácil de usar.

+0

En lugar de GridBagLayout: usaría MigLayout. http://www.miglayout.com/ Funciona tanto en SWT como en Swing. – Nate

1

también echar un vistazo a JSR-296: que es un intento de formalizar algunos de los aspectos de la elaboración de una aplicación, como la forma de manejar los recursos-haces, cómo disparar de 'tareas' (fondo y modal, etc.).

La versión actual (y algunas versiones anteriores) de Netbeans tiene un asistente para compilar aplicaciones JSR-296. ("Aplicaciones de escritorio").

http://jcp.org/en/jsr/detail?id=296

Cuestiones relacionadas