SlideShare una empresa de Scribd logo
1 de 31
Elementos de Programación
Orientados a Objetos
M. en C. Michael Rojas R.
correo: mrojas.unitec@gmail.com
GUI en Java
• GUI: (Graphic User Interface o Interfaz Gráfica
de Usuario.
• Conjunto de formas y métodos que posibilitan
la interacción de un sistema con los usuarios
utilizando formas gráficas e imágenes.
• Con formas gráficas se refiere a botones,
íconos, ventanas, fuentes, etc. los cuales
representan funciones, acciones e
información.
GUI en Java
• En java existen dos modelos para realizar GUI,
inclusive es posible combinar ambos.
– AWT.
– SWING.
AWT
• Abstract Window Toolkit
• Es un kit de herramientas de gráficos, interfaz
de usuario, y sistema de ventanas
independiente de la plataforma original de
Java.
AWT
– Contiene clases para crear GUIs.
– Las interfaces de usuario se crean empleando
clases que representan componentes:
􀂄 botones, ventanas, etc.
– Existen componentes de tipo contenedor.
• Contienen a otros componentes
• Usan gestores de geometría
– Los componentes producen eventos
• provocan la ejecución de ciertos métodos en las clases
escuchadores.
Componentes de AWT
java.awt.Component
• Proporciona componentes
de alto nivel para
• construir los interfaces de
usuario.
• Clases:
– Button
– Label
– Checkbox
– Choice
– List
– TextField
– TextArea
– Scrollbar
– Canvas
– Menu
– MenuBar
– PopupMenu
• Contenedores:
– Panel
– Frame
– Dialog
– ScrollPane
Ventana en AWT
SWING
• Tanto AWT como Swing proporciona
componentes básicos de GUI para utilizarlos,
tanto en los applets como en las aplicaciones.
• Existen superclases que se pueden extender y
sus propiedades se pueden heredar; las clases
pueden ser abstractas.
• Proporciona componentes básicos de GUI
para utilizarlos, tanto en los applets como en
las aplicaciones.
SWING
• Pertenece a las JFC (Java Foundation Classes).
• Biblioteca gráfica de Java desde la versión 1.2.
• Contenido en el paquete “javax.swing”.
• Creada a partir de “java.awt”.
• Permite una interfaz adaptada a cada SO sin
cambio de código.
• Fácil manejo.
Clases de Paquete de Swing
• Todos los componentes heredan de
javax.swing.JComponent
• JFrame será la base para la aplicación
principal.
• JDialog construirá los dialógos (ventanas).
• El resto de clases serán componentes simples.
• Usar en todas las clases import javax.swing.*;
y import java.awt.*;
Clases de Paquete de Swing
JFrame
JFrame
setSize
setTitle
setVisible
setCursor
Ejemplo JFrame
Ejemplo JFrame
Hola Mundo en SWING
import javax.swing.*;
public class HelloWorldSwing {
private static void createAndShowGUI() {
JFrame frame = new JFrame("HelloWorldSwing");
JLabel label = new JLabel("Hello World");
frame.getContentPane().add(label);
frame.setVisible(true); }
}}
Gestores de Esquemas
• Clases que determinan cómo se distribuirán los
componentes dentro del contenedor.
• La mayoría definidos en java.awt
– FlowLayout
– BorderLayout
– GridLayout
– GridBagLayout
– CardLayout (Swing propone alternativa)
– BoxLayout (nueva en Swing: javax.swing)
• JPanel por defecto disponde de un BorderLayout
• Una GUI normalmente añade varios paneles al
contentpane, para diferentes usos, como
mostrar datos, gráficos, interactuar con el
usuario...
• Cada panel puede tener diferentes layouts, y
contener otros componentes y contenedores.
JPanel
JButton
• Es un botón que puede contener texto,
gráficos, o ambos.
• jButton1 = new javax.swing.JButton();
• jButton1.setText(“Aceptar");
JButton
• •Metodos importantes:
– . setText(•gTexto•h);
– . setTooltipText(•gTooltip•h);
– . setBackground(new Color(R, G, B));
– . setForeground(Color.color);
– . setIcon(new ImageIcon(•gruta•h));
– . setFont(new Font(•gtipo•h, estilio, tamano));
– . setBounds(new Rectangle(posX,posY,tamX,tamY));
• •Y sus correspondientes get.
JButton
• JButton boton1 = new JButton();
• boton1.setBounds(new Rectangle(107, 50, 102, 41));
• boton1.setBackground(new Color(91, 238, 89));
• boton1.setForeground(Color.red);
• boton1.setToolTipText("Prueba");
• boton1.setFont(new Font("Comic Sans MS",Font.BOLD, 14));
• boton1.setText("Botón de prueba");
JCheckBox
• Es un control que representa dos estados (On
y Off).
• •
• Mismas propiedades y metodos que los
anteriores.
• •Metodos isSelected() y setSelected(boolean)
JRadioButton
• Permiten seleccionar una única opción dentro
de un conjunto de opciones relacionadas.
• Sólo puede haber una opción seleccionada a
la vez.
• Métodos similares a los de JCheckBox.
JRadioButton
• Los botones de radio (como los checkboxes),
suelen aparecer agrupados, con una leyenda
identificativa.
• Para ello, en Swing se utiliza un panel, con un
borde y un título, agrupandolos en un
ButtonGroup.
JComboBox
• Esta componente nos permite, al hacer click
sobre ella, seleccionar una opción de entre un
conjunto, todas ellas mutuamente exclusivas.
• •Se pueden generalizar en dos tipos:
– Editables
– No editables
• •Metodos:
– . setEditable(boolean);
– . addItem(Objeto);
– . getSelectedItem();
JComboBox
JComboBox (Ejemplo)
• private String[] contenidos
={"Manzana","Naranja","Platano","Tiburon","
Tomate","Trucha"};
• private JComboBox jComboBox1 = new
JComboBox(contenidos);
JList
• Es un componente que muestra un conjunto de ítems de
texto, gráfico o ambos.
• Permite tres tipos de selección:
– Ítem único
– Rango simple
– Rango múltiple
• •Mediante el metodo:
– .setSelectionMode(ListSelectionModel.SELECTION);
• . Donde SELECTION puede ser:
– SINGLE_SELECTION
– SINGLE_INTERVAL_SELECTION
– MULTIPLE_INTERVAL_SELECTION
Jlist (Ejemplo)
private String[] contenidos={"elemento1",
"elemento2","elemento3","elemento4","elemento5"};
private JList=new JList(contenidos);
jTextField1.setText((String)jList1.getSelectedValue());
Generando una aplicación SWING en
NetBeans
Creando una Ventana
Tarea
• Eventos en componentes.
• Controlando aspectos visuales.

Más contenido relacionado

La actualidad más candente

Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Giancarlo Aguilar
 
Lenguaje de programacion orientado a eventos
Lenguaje de programacion orientado a eventosLenguaje de programacion orientado a eventos
Lenguaje de programacion orientado a eventosJairo Velasquez Rivera
 
Programacion Orientada a Eventos
Programacion Orientada a EventosProgramacion Orientada a Eventos
Programacion Orientada a EventosLaura
 
Advance Java Programming (CM5I) 6.Servlet
Advance Java Programming (CM5I) 6.ServletAdvance Java Programming (CM5I) 6.Servlet
Advance Java Programming (CM5I) 6.ServletPayal Dungarwal
 
Partes de la pantalla de eclipse
Partes de la pantalla de eclipsePartes de la pantalla de eclipse
Partes de la pantalla de eclipselourdes9898
 
TUTORIAL DE MySQL WORKBENCH
TUTORIAL DE MySQL WORKBENCHTUTORIAL DE MySQL WORKBENCH
TUTORIAL DE MySQL WORKBENCHkelsy98
 
Diagramas clases presentacion
Diagramas clases presentacionDiagramas clases presentacion
Diagramas clases presentacionjosebrandon24
 
INTEGRIDAD DE ENTIDAD E INTEGRIDAD REFERENCIAL EN SQL SERVER Y ACCESS
INTEGRIDAD DE ENTIDAD E INTEGRIDAD REFERENCIAL EN SQL SERVER Y ACCESSINTEGRIDAD DE ENTIDAD E INTEGRIDAD REFERENCIAL EN SQL SERVER Y ACCESS
INTEGRIDAD DE ENTIDAD E INTEGRIDAD REFERENCIAL EN SQL SERVER Y ACCESSitsl
 
android activity
android activityandroid activity
android activityDeepa Rani
 

La actualidad más candente (20)

C3 lenguaje de presentación.
C3 lenguaje de presentación.C3 lenguaje de presentación.
C3 lenguaje de presentación.
 
Eventos en Java
Eventos en JavaEventos en Java
Eventos en Java
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.
 
Lenguaje XML
Lenguaje XMLLenguaje XML
Lenguaje XML
 
Connection en Java
Connection en JavaConnection en Java
Connection en Java
 
Arreglos en Java
Arreglos en JavaArreglos en Java
Arreglos en Java
 
Lenguaje de programacion orientado a eventos
Lenguaje de programacion orientado a eventosLenguaje de programacion orientado a eventos
Lenguaje de programacion orientado a eventos
 
Procedimientos almacenados en MySQL
Procedimientos almacenados en MySQLProcedimientos almacenados en MySQL
Procedimientos almacenados en MySQL
 
Programacion Orientada a Eventos
Programacion Orientada a EventosProgramacion Orientada a Eventos
Programacion Orientada a Eventos
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Exposición Diagrama de Clases
Exposición Diagrama de ClasesExposición Diagrama de Clases
Exposición Diagrama de Clases
 
Advance Java Programming (CM5I) 6.Servlet
Advance Java Programming (CM5I) 6.ServletAdvance Java Programming (CM5I) 6.Servlet
Advance Java Programming (CM5I) 6.Servlet
 
Partes de la pantalla de eclipse
Partes de la pantalla de eclipsePartes de la pantalla de eclipse
Partes de la pantalla de eclipse
 
Eventos y listeners en Java Swing
Eventos y listeners en Java SwingEventos y listeners en Java Swing
Eventos y listeners en Java Swing
 
Tipos de Datos Abstractos (TDA)
Tipos de Datos Abstractos (TDA)Tipos de Datos Abstractos (TDA)
Tipos de Datos Abstractos (TDA)
 
Tópicos Avanzados de Programación - Unidad 1 GUI
Tópicos Avanzados de Programación - Unidad 1 GUITópicos Avanzados de Programación - Unidad 1 GUI
Tópicos Avanzados de Programación - Unidad 1 GUI
 
TUTORIAL DE MySQL WORKBENCH
TUTORIAL DE MySQL WORKBENCHTUTORIAL DE MySQL WORKBENCH
TUTORIAL DE MySQL WORKBENCH
 
Diagramas clases presentacion
Diagramas clases presentacionDiagramas clases presentacion
Diagramas clases presentacion
 
INTEGRIDAD DE ENTIDAD E INTEGRIDAD REFERENCIAL EN SQL SERVER Y ACCESS
INTEGRIDAD DE ENTIDAD E INTEGRIDAD REFERENCIAL EN SQL SERVER Y ACCESSINTEGRIDAD DE ENTIDAD E INTEGRIDAD REFERENCIAL EN SQL SERVER Y ACCESS
INTEGRIDAD DE ENTIDAD E INTEGRIDAD REFERENCIAL EN SQL SERVER Y ACCESS
 
android activity
android activityandroid activity
android activity
 

Destacado

Procesos de Software EGEL-UNITEC
Procesos de Software EGEL-UNITECProcesos de Software EGEL-UNITEC
Procesos de Software EGEL-UNITECmrojas_unitec
 
herramientas case
herramientas caseherramientas case
herramientas casetomaspetto
 
Administracion de proyectos tecnologicos 0
Administracion de proyectos tecnologicos 0Administracion de proyectos tecnologicos 0
Administracion de proyectos tecnologicos 0Tensor
 
Presentación Workshop de Change Management
Presentación Workshop de Change ManagementPresentación Workshop de Change Management
Presentación Workshop de Change Managementhotturi
 
La gestión del Cambio en los Proyectos Tecnológicos
La gestión del Cambio en los Proyectos TecnológicosLa gestión del Cambio en los Proyectos Tecnológicos
La gestión del Cambio en los Proyectos TecnológicosTICAnoia
 
52165998 deteccion-de-las-necesidades-informaticas-en-las-organizaciones
52165998 deteccion-de-las-necesidades-informaticas-en-las-organizaciones52165998 deteccion-de-las-necesidades-informaticas-en-las-organizaciones
52165998 deteccion-de-las-necesidades-informaticas-en-las-organizacionesJare Muñoz
 
Archivos.ceneval.edu.mx archivos portal_17353_guiadel_egel-info
Archivos.ceneval.edu.mx archivos portal_17353_guiadel_egel-infoArchivos.ceneval.edu.mx archivos portal_17353_guiadel_egel-info
Archivos.ceneval.edu.mx archivos portal_17353_guiadel_egel-infoMario Chávez Morales
 
Gestión de Proyectos Tecnológicos
Gestión de Proyectos TecnológicosGestión de Proyectos Tecnológicos
Gestión de Proyectos TecnológicosMariaFontalvo
 
Journalistes
JournalistesJournalistes
Journalisteszalinet
 
La civilización
La civilizaciónLa civilización
La civilizaciónmelajosfer
 
Formato 7 matriz_tpack go friends
Formato 7 matriz_tpack go friendsFormato 7 matriz_tpack go friends
Formato 7 matriz_tpack go friendsMonica Tello rojas
 
eanor. orozco alvarado
eanor. orozco alvaradoeanor. orozco alvarado
eanor. orozco alvaradopapushoorozco
 
Estación # 2
Estación # 2Estación # 2
Estación # 2Marchdi
 

Destacado (20)

Diferencias swing y awt
Diferencias swing y awtDiferencias swing y awt
Diferencias swing y awt
 
Procesos de Software EGEL-UNITEC
Procesos de Software EGEL-UNITECProcesos de Software EGEL-UNITEC
Procesos de Software EGEL-UNITEC
 
Java swing y awt
Java swing y awtJava swing y awt
Java swing y awt
 
herramientas case
herramientas caseherramientas case
herramientas case
 
Administracion de proyectos tecnologicos 0
Administracion de proyectos tecnologicos 0Administracion de proyectos tecnologicos 0
Administracion de proyectos tecnologicos 0
 
Presentación Workshop de Change Management
Presentación Workshop de Change ManagementPresentación Workshop de Change Management
Presentación Workshop de Change Management
 
La gestión del Cambio en los Proyectos Tecnológicos
La gestión del Cambio en los Proyectos TecnológicosLa gestión del Cambio en los Proyectos Tecnológicos
La gestión del Cambio en los Proyectos Tecnológicos
 
52165998 deteccion-de-las-necesidades-informaticas-en-las-organizaciones
52165998 deteccion-de-las-necesidades-informaticas-en-las-organizaciones52165998 deteccion-de-las-necesidades-informaticas-en-las-organizaciones
52165998 deteccion-de-las-necesidades-informaticas-en-las-organizaciones
 
Archivos.ceneval.edu.mx archivos portal_17353_guiadel_egel-info
Archivos.ceneval.edu.mx archivos portal_17353_guiadel_egel-infoArchivos.ceneval.edu.mx archivos portal_17353_guiadel_egel-info
Archivos.ceneval.edu.mx archivos portal_17353_guiadel_egel-info
 
Gestión de Proyectos Tecnológicos
Gestión de Proyectos TecnológicosGestión de Proyectos Tecnológicos
Gestión de Proyectos Tecnológicos
 
Journalistes
JournalistesJournalistes
Journalistes
 
tanatologia
tanatologiatanatologia
tanatologia
 
La civilización
La civilizaciónLa civilización
La civilización
 
Minibatt
MinibattMinibatt
Minibatt
 
Formato 7 matriz_tpack go friends
Formato 7 matriz_tpack go friendsFormato 7 matriz_tpack go friends
Formato 7 matriz_tpack go friends
 
Cuidados del agua
Cuidados del aguaCuidados del agua
Cuidados del agua
 
eanor. orozco alvarado
eanor. orozco alvaradoeanor. orozco alvarado
eanor. orozco alvarado
 
Mesache maribel word
Mesache maribel wordMesache maribel word
Mesache maribel word
 
Les réseaux sociaux.gil
Les réseaux sociaux.gilLes réseaux sociaux.gil
Les réseaux sociaux.gil
 
Estación # 2
Estación # 2Estación # 2
Estación # 2
 

Similar a Introducción a Swing

Similar a Introducción a Swing (20)

Controles de Interfaz Parte Practica.pdf
Controles de Interfaz Parte Practica.pdfControles de Interfaz Parte Practica.pdf
Controles de Interfaz Parte Practica.pdf
 
Guis en java-1pp_2011_
Guis en java-1pp_2011_Guis en java-1pp_2011_
Guis en java-1pp_2011_
 
Guis en java-1pp_2012_
Guis en java-1pp_2012_Guis en java-1pp_2012_
Guis en java-1pp_2012_
 
JAVA Interfaz gráfica (GUI)
JAVA Interfaz gráfica (GUI)JAVA Interfaz gráfica (GUI)
JAVA Interfaz gráfica (GUI)
 
12swing gui
12swing gui12swing gui
12swing gui
 
Miswing 110511215936-phpapp01
Miswing 110511215936-phpapp01Miswing 110511215936-phpapp01
Miswing 110511215936-phpapp01
 
Controles de Interfaz Introduccion.pdf
Controles de Interfaz Introduccion.pdfControles de Interfaz Introduccion.pdf
Controles de Interfaz Introduccion.pdf
 
Guis_en_java_6pp.pdf
Guis_en_java_6pp.pdfGuis_en_java_6pp.pdf
Guis_en_java_6pp.pdf
 
Java 120706083911-phpapp01
Java 120706083911-phpapp01Java 120706083911-phpapp01
Java 120706083911-phpapp01
 
Trabajo teórico exposcición
Trabajo teórico exposciciónTrabajo teórico exposcición
Trabajo teórico exposcición
 
Gu is awt_swing
Gu is awt_swingGu is awt_swing
Gu is awt_swing
 
Interfaz gráfica de usuario y eventos (introducción)
Interfaz gráfica de usuario y eventos (introducción)Interfaz gráfica de usuario y eventos (introducción)
Interfaz gráfica de usuario y eventos (introducción)
 
Tema6resumido
Tema6resumidoTema6resumido
Tema6resumido
 
CLASE SWING
CLASE SWING CLASE SWING
CLASE SWING
 
S5-P2.pptx
S5-P2.pptxS5-P2.pptx
S5-P2.pptx
 
S5 p2
S5 p2S5 p2
S5 p2
 
Controles swing
Controles swingControles swing
Controles swing
 
Interfaces graficas(1)
Interfaces graficas(1)Interfaces graficas(1)
Interfaces graficas(1)
 
Clase swing
Clase swingClase swing
Clase swing
 
Taller 1 7
Taller 1 7Taller 1 7
Taller 1 7
 

Último

proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICAÁngel Encinas
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptxRigoTito
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioELIASAURELIOCHAVEZCA1
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfMercedes Gonzalez
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfpatriciaines1993
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxlclcarmen
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfUPTAIDELTACHIRA
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxEliaHernndez7
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosJonathanCovena1
 
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdfMiNeyi1
 

Último (20)

proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
 
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
 

Introducción a Swing

  • 1. Elementos de Programación Orientados a Objetos M. en C. Michael Rojas R. correo: mrojas.unitec@gmail.com
  • 2. GUI en Java • GUI: (Graphic User Interface o Interfaz Gráfica de Usuario. • Conjunto de formas y métodos que posibilitan la interacción de un sistema con los usuarios utilizando formas gráficas e imágenes. • Con formas gráficas se refiere a botones, íconos, ventanas, fuentes, etc. los cuales representan funciones, acciones e información.
  • 3. GUI en Java • En java existen dos modelos para realizar GUI, inclusive es posible combinar ambos. – AWT. – SWING.
  • 4. AWT • Abstract Window Toolkit • Es un kit de herramientas de gráficos, interfaz de usuario, y sistema de ventanas independiente de la plataforma original de Java.
  • 5. AWT – Contiene clases para crear GUIs. – Las interfaces de usuario se crean empleando clases que representan componentes: 􀂄 botones, ventanas, etc. – Existen componentes de tipo contenedor. • Contienen a otros componentes • Usan gestores de geometría – Los componentes producen eventos • provocan la ejecución de ciertos métodos en las clases escuchadores.
  • 6. Componentes de AWT java.awt.Component • Proporciona componentes de alto nivel para • construir los interfaces de usuario. • Clases: – Button – Label – Checkbox – Choice – List – TextField – TextArea – Scrollbar – Canvas – Menu – MenuBar – PopupMenu • Contenedores: – Panel – Frame – Dialog – ScrollPane
  • 8. SWING • Tanto AWT como Swing proporciona componentes básicos de GUI para utilizarlos, tanto en los applets como en las aplicaciones. • Existen superclases que se pueden extender y sus propiedades se pueden heredar; las clases pueden ser abstractas. • Proporciona componentes básicos de GUI para utilizarlos, tanto en los applets como en las aplicaciones.
  • 9. SWING • Pertenece a las JFC (Java Foundation Classes). • Biblioteca gráfica de Java desde la versión 1.2. • Contenido en el paquete “javax.swing”. • Creada a partir de “java.awt”. • Permite una interfaz adaptada a cada SO sin cambio de código. • Fácil manejo.
  • 10. Clases de Paquete de Swing
  • 11. • Todos los componentes heredan de javax.swing.JComponent • JFrame será la base para la aplicación principal. • JDialog construirá los dialógos (ventanas). • El resto de clases serán componentes simples. • Usar en todas las clases import javax.swing.*; y import java.awt.*; Clases de Paquete de Swing
  • 15. Hola Mundo en SWING import javax.swing.*; public class HelloWorldSwing { private static void createAndShowGUI() { JFrame frame = new JFrame("HelloWorldSwing"); JLabel label = new JLabel("Hello World"); frame.getContentPane().add(label); frame.setVisible(true); } }}
  • 16. Gestores de Esquemas • Clases que determinan cómo se distribuirán los componentes dentro del contenedor. • La mayoría definidos en java.awt – FlowLayout – BorderLayout – GridLayout – GridBagLayout – CardLayout (Swing propone alternativa) – BoxLayout (nueva en Swing: javax.swing) • JPanel por defecto disponde de un BorderLayout
  • 17. • Una GUI normalmente añade varios paneles al contentpane, para diferentes usos, como mostrar datos, gráficos, interactuar con el usuario... • Cada panel puede tener diferentes layouts, y contener otros componentes y contenedores. JPanel
  • 18. JButton • Es un botón que puede contener texto, gráficos, o ambos. • jButton1 = new javax.swing.JButton(); • jButton1.setText(“Aceptar");
  • 19. JButton • •Metodos importantes: – . setText(•gTexto•h); – . setTooltipText(•gTooltip•h); – . setBackground(new Color(R, G, B)); – . setForeground(Color.color); – . setIcon(new ImageIcon(•gruta•h)); – . setFont(new Font(•gtipo•h, estilio, tamano)); – . setBounds(new Rectangle(posX,posY,tamX,tamY)); • •Y sus correspondientes get.
  • 20. JButton • JButton boton1 = new JButton(); • boton1.setBounds(new Rectangle(107, 50, 102, 41)); • boton1.setBackground(new Color(91, 238, 89)); • boton1.setForeground(Color.red); • boton1.setToolTipText("Prueba"); • boton1.setFont(new Font("Comic Sans MS",Font.BOLD, 14)); • boton1.setText("Botón de prueba");
  • 21. JCheckBox • Es un control que representa dos estados (On y Off). • • • Mismas propiedades y metodos que los anteriores. • •Metodos isSelected() y setSelected(boolean)
  • 22. JRadioButton • Permiten seleccionar una única opción dentro de un conjunto de opciones relacionadas. • Sólo puede haber una opción seleccionada a la vez. • Métodos similares a los de JCheckBox.
  • 23. JRadioButton • Los botones de radio (como los checkboxes), suelen aparecer agrupados, con una leyenda identificativa. • Para ello, en Swing se utiliza un panel, con un borde y un título, agrupandolos en un ButtonGroup.
  • 24. JComboBox • Esta componente nos permite, al hacer click sobre ella, seleccionar una opción de entre un conjunto, todas ellas mutuamente exclusivas.
  • 25. • •Se pueden generalizar en dos tipos: – Editables – No editables • •Metodos: – . setEditable(boolean); – . addItem(Objeto); – . getSelectedItem(); JComboBox
  • 26. JComboBox (Ejemplo) • private String[] contenidos ={"Manzana","Naranja","Platano","Tiburon"," Tomate","Trucha"}; • private JComboBox jComboBox1 = new JComboBox(contenidos);
  • 27. JList • Es un componente que muestra un conjunto de ítems de texto, gráfico o ambos. • Permite tres tipos de selección: – Ítem único – Rango simple – Rango múltiple • •Mediante el metodo: – .setSelectionMode(ListSelectionModel.SELECTION); • . Donde SELECTION puede ser: – SINGLE_SELECTION – SINGLE_INTERVAL_SELECTION – MULTIPLE_INTERVAL_SELECTION
  • 28. Jlist (Ejemplo) private String[] contenidos={"elemento1", "elemento2","elemento3","elemento4","elemento5"}; private JList=new JList(contenidos); jTextField1.setText((String)jList1.getSelectedValue());
  • 29. Generando una aplicación SWING en NetBeans
  • 31. Tarea • Eventos en componentes. • Controlando aspectos visuales.