Post on 19-Jan-2016
1
DOCENTE: MARTIN SALCEDO QUIÑONES
CURSO: PROGRACION VISUAL I
ALUMNO: JUAN MANUEL CASTILLO GAMARRA.
TEMA: TRABAJO 3 DE INVESTIGACIÓN
FORMATIVA
LOS OBJETOS DE CONTROL DEL PAQUETE SWING EN LA PROGRAMACIÓN VISUAL JAVA
HUARAZ-2014
2
LOS OBJETOS DE CONTROL DEL PAQUETE
SWING EN LA PROGRAMACIÓN VISUAL JAVA
3
La mayor declaración de amor es la que no se hace; el
hombre que siente mucho, habla poco
(Platón )
4
DEDICATORIA
A mis padres:
por su apoyo incondicional que me brindan y
por estar siempre conmigo.
5
AGRADECIMIENTOS
A todas aquellas personas con sed
de conocimiento y
deseos de superación,
que leen hoy estas
páginas y premian el
esfuerzo de este
trabajo.
6
INTRODUCCION
La exigencia, cada vez mayor, de contar con interfaces graficas de
usuario (guis) sencillas, claras y potentes exige a los programadores
un gran esfuerzo para conseguir los resultados óptimos;
(entendiendo por gui, al software que permite la interacción entre el
usuario y los servicios que ofrece el sistema operativo, utilizando para
ello una representación gráfica.
7
CAPÍTULO I
1. SWING
El paquete swing es el nuevo paquete grafico que ha aparecido en la versión 1.2 de java.
Está compuesto por un amplio conjunto de componentes de interfaces de usuario y que
pretenden funcionar en el mayor número posible de plataformas. Cada uno de los
componentes de este paquete puede presentar diversos aspectos y comportamientos
en función de una biblioteca de clases.
2. COMPONENTES DE SWING
CONTENEDORES BÁSICOS:
JFrame: Representa una ventana básica, capaz de contener otros componentes. Casi todas las aplicaciones construyen al menos un Jframe.
JDialog, JOptionPane, etc: Los cuadros de diálogo son JFrame restringidos,
dependientes de un JFrame principal. Los JOptionPane son cuadros de
diálogo sencillos predefinidos para pedir confirmación, realizar advertencias
o notificar errores. Los JDialog son cuadros de diálogo generales,
normalmente utilizados para peticiones de datos.
JInternalFrame: Consiste simplemente en una ventana hija, que no puede
salir de los límites marcados por la ventana principal. Es muy común en
aplicaciones que permiten tener varios documentos abiertos
simultáneamente.
JPanel: Un panel sirve para agrupar y organizar otros componentes. Puede
estar decorado mediante un borde y una etiqueta.
JScrollPane: Es un panel que permite visualizar un componente de un tamaño
mayorque el disponible, mediante el uso de barras de desplazamiento.
8
JSplitPane: Permite visualizar dos componentes, uno a cada lado, con la
posibilidad de modificar la cantidad de espacio otorgado a cada uno.
JTabbedPane: Permite definir varias hojas con pestañas, que pueden contener
otros componentes. El usuario puede seleccionar la hoja que desea ver
mediante las pestañas.
JToolBar: Es un contenedor que permite agrupar otros componentes,
normalmente botones con iconos en una fila o columna. Las barras de
herramientas tienen la particularidad de que el usuario puede situarlas en
distintas configuraciones sobre el frame principal.
CONTROLES BÁSICOS:
JButton, JCheckBox, JRadioButton: Distintos tipos de botones. Un check box
sirve para marcar una opción. Un radio button permite seleccionar una
opción entre varias disponibles.
JComboBox: Las combo boxes o listas desplegables que permiten seleccionar
un opción entre varias posibles.
JList: Listas que permiten seleccionar uno o más elementos.
JTextField, JFormattedTextField, JpasswordField: Distintos tipos de editores.
JFormattedTextField permite indicar el conjunto de caracteres legales que
pueden introducirse. JPasswordField no muestra el contenido.
JSlider: Un slider permiten introducir un valor numérico entre un máximo y
un mínimo de manera rápida.
9
MENÚS DESPLEGABLES.
JMenuBar, que consiste en una barra de menús desplegables en la parte
superior de la aplicación, y JPopupMenu, un menú que se obtiene al pulsar
con el botón derecho del ratón sobre una zona determinada. Los menús
están compuestos por distintos ítems.
JSeparator (una línea de separación entre opciones)
JMenuItem (una opción ordinaria), JMenu (un submenu), J
CheckboxMenuItem (un opción en forma de check box) o finalmente
JradioButtonMenuItem (una opción en forma de radio button).
CONTROLES ESPECIALIZADOS:
ColorChooser: Consiste en un selector de colores.
JFileChooser: Permite abrir un cuadro de diálogo para pedir un nombre de
fichero.
JTree: Su función es mostrar información de tipo jerárquico.
CONTROLES BÁSICOS NO INTERACTIVOS
JLabel: Permite situar un texto, un texto con una imagen o una imagen
únicamente en la ventana. No son interactivos y puede utilizarse código HTML
para escribir texto en varias líneas y con varios atributos.
JProgressBar: Permite mostrar que porcentaje del total de una tarea a
realizar ha sido completado.
JToolTip: Consiste en una etiqueta de ayuda que surge al cabo de uno
segundos sobre la posición apuntada por el cursor. Normalmente no es
necesario utilizar directamente la clase.
10
CAPITULO II HISTORIA DE LOS ELEMENTOS DE CONTROL DEL PAQUETE SWING
Desde sus inicios el entorno Java ya contaba con una biblioteca de
componentes gráficos conocida como AWT.
La introducción de soporte ensamblable para el aspecto permitió a Swing
emular la apariencia de los componentes nativos manteniendo las ventajas
de la independencia de la plataforma. También contiene un conjunto de
herramientas que nos permiten crear una interfaz atractiva para los
usuarios.
El paquete Swing es el nuevo paquete gráfico que ha aparecido en la versión
1.2 de Java. Está compuesto por un amplio conjunto de componentes de
interfaces de usuario que funcionen en el mayor número posible de
plataformas.
Cada uno de los componentes de este paquete puede presentar diversos
aspectos y comportamientos en función de una biblioteca de clases. En la
versión 1.0 de Swing, que corresponde a la distribuida en la versión 1.2 de la
API de Java se incluyen tres bibliotecas de aspecto y comportamiento para
Swing:
metal.jar: Aspecto y comportamiento independiente de la plataforma.
motif.jar: Basado en la interfaz Sun Motif.
windows.jar: Muy similar a las interfaces Microsoft Windows.
La siguiente imagen muestra una aplicación de ejemplo (adjunta al JDK 1.2)
que muestra las diferentes interfaces para una misma aplicación según se
utilice una u otra biblioteca:
Es la nueva clase denominada UiManager la que se encarga del aspecto y
comportamiento de una aplicación Swing en un entorno de ejecución.
11
SOLIDES DE LOS PAQUETES SWING
los usuarios pueden proveer sus propias implementaciones modificadas
para sobrescribir las implementaciones por defecto. Se puede extender clases
existentes proveyendo alternativas de implementación para elementos
esenciales.
Personalizable: dado el modelo de swing, el control permite representar
diferentes estilos de apariencia como las MacOS hasta apariencia Windows
XP Además, los usuarios pueden proveer su propia implementación de
apariencia, que permitirá cambios uniformes en la apariencia existente en las
aplicaciones Swing sin efectuar ningún cambio al código de aplicación.
PRINCIPALES CLASES
Las clases de Swing se parecen mucho a las de AWT.
ButtonGroup: Muestra una lista de elementos (JRadioButton) con solo uno
seleccionable. Cada elemento tiene un círculo, que en caso del elemento
seleccionado contendrá un "punto".
12
JToggleButton: Es como un botón normal, pero al ser pinchado por el usuario
queda activado.
JProgressBar: Representa una barra de estado de progreso, mediante la que
habitualmente se muestra el desarrollo de un proceso en desarrollo (ejemplo:
la instalación de una aplicación).
13
GESTORES SWING
Swing incorpora nuevos gestores de impresión, ampliando los cinco que AWT incorporaba.
Entre ellos conviene destacar los siguientes:
BoxLayout: Es similar al FlowLayout de AWT, con la diferencia de que con él
se pueden especificar los ejes (x o y). Viene incorporada en el componente
Box, pero está disponible como una opción en otros componentes.
OverlayLayout: Todos los componentes se añaden encima de cada
componente previo.
SpringLayout: El espacio se asigna en función de una serie de restricciones
asociadas con cada componente.
ScrollPaneLayout: Incorporado en el componente ScrollPane.
ViewportLayout: Incorporado en el componente Viewport.
DIFERENCIA ENTRE OBJETOS CREADOS CON PAQUETE SWING Y AWT
Para solventar esto SUN decidió hacer SWING, esta API a diferencia de AWT, está
implementada totalmente en java, usa partes de AWT como base pero si necesita poner un
textbox en pantalla no usa el del sistema operativo sino que lo pinta en pantalla el mismo.
Esto le da mayor potencia a los controles ya que el único límite es lo que SUN quiera ponerle
a java y de esta forma la mayoría de características de los controles que vemos normalmente
han sido implementadas en SWING. Lo único que se pierde es un poco de velocidad en la
interface ya que el manejo de los eventos y el dibujado de los controles no los hace java y no
el sistema operativo, pero con los computadores de hoy en día la diferencia no es mucha.
VENTAJAS:
El diseño en Java puro posee menos limitaciones de plataforma.
El desarrollo de componentes Swing es más activo.
Los componentes de Swing soportan más características.
14
REFERENCIAS BIBLIOGRAFICAS
Soluciones de programación, MCGRAW-HILL PROFESSIONAL PUBLISHING, 12/2010.
Imágenes obtenida del entorno de NET BEANS 7.0.1
Introducción a la programación en java ESPAÑA 2010
1. THIERRY GROUSSARF, JAVA 7 LOS FUNDAMENTOS DEL LENJUAGE JAVA, ENI; MARZO 2012,
BARCELONA:
2. LUIS FERNANDO GARCIA LLINÁS, PROGRAMACÍON BÁSICA ORIENTADA A OBJETO EN JAVA, GRUPO
EDITORIAL IBAÑES; 2010
3. MARCO A. PEÑA BASURTO, JOSÉ M. CELA ESPÍN, INTRODUCCIÓN A LA
PROGRAMACIÓN EN JAVA, EDITORIAL, UNIVERSIDAD POLITÉCNICA DE CATALUNYA, ESPAÑA, 2010
4. JESUS SANCHEZ ALLENDE, GABRIEL HUECAS FERNANDEZ-TORIBIO, PILAR MORENO,
PROGRAMACION EN JAVA2, DIAZ.EDITORIAL: MCGRAW-HILL, ESPAÑA, 2005
5. HERBERT SCHILDT, JAVA: SOLUCIONES DE PROGRAMACIÓN, MCGRAW-HILL PROFESSIONAL
PUBLISHING, 12/2010.
6. FLÓREZ FERNÁNDEZ, HÉCTOR ARTURO, PROGRAMACIÓN ORIENTADA A OBJETOS USANDO JAVA ,
EDITORIAL: ECOE EDICIONES, 2012
7. GARCÍA LLINÁS, LUIS FERNANDO, TODO LO BÁSICO QUE DEBERÍA SABER: SOBRE PROGRAMACIÓN
ORIENTADA A OBJETOS EN JAVA, EDITORIAL: EDICIONES DE LA U,2010
8. GÓMEZ JIMÉNEZ, ENRIQUE HERRERA, ALEJANDRO CRUZ ULLOA, ALEJANDRO, DESARROLLO DE
SOFTWARE CON NETBEANS 7.1 PROGRAME PARA ESCRITORIO, WEB Y DISPOSITIVOS MÓVILES,
EDITORIAL: ALFAOMEGA GRUPO EDITOR,2012
9. SÁNCHEZ ALLENDE, JESÚS HUECAS FERNÁNDEZ-TORIBIO, GABRIEL FERNÁNDEZ MANJÓN,
BALTASAR, JAVA 2: INICIACIÓN Y REFERENCIA (2A. ED.), EDITORIAL: MCGRAW-HILL ESPAÑA,2005
10. PRIETO, NATIVIDAD MARQUÉS, FRANCISCO LLORENS, MARISA , PRIETO, NATIVIDAD MARQUÉS,
FRANCISCO LLORENS, MARISA , EDITORIAL: EDITORIAL DE LA UNIVERSIDAD POLITÉCNICA DE
VALENCIA, 2013