Java Swing Extiende AWT que sigue presente. Independiente de la plataforma (100% java). Las clases de Swing permiten trabajar con componentes y contenedores. componente: facilitan la interacción del usuario con la aplicación. Menús, botones, etiquetas texto, checkboxes,etc. contenedor: se utilizan para contener componentes. Ventanas, frames, diálogos, paneles. Java Swing Componentes Java Swing Contenedores Java Swing Layout Managers Deciden la posición y tamaño de cada componente. BorderLayout Posee 5 áreas disponibles. FlowLayout Posee 5 áreas disponibles. GridLayout Utiliza celdas del mismo tamaño. Java Swing GridBadLayout celdas de distinto tamaño. CardLayout Varios componentes en distintos paneles. BoxLayout Componentes alineados al eje X o Y, permitiendo distintos tamaños. Java Swing import javax.swing.*; import java.awt.*; class ejemplo{ public static void main(String args[]){ ....... } } Java Swing import javax.swing.*; import java.awt.*; class ejemplo{ public static void main(String args[]){ JFrame frame; JTabbedPane tabs; JPanel panel1,panel2; JButton button11,button12,button21,button22; JTextArea area_texto1,area_texto2; frame = new JFrame("hola!!!"); tabs = new JTabbedPane(); panel1 = new JPanel(); panel2 = new JPanel(); button11 = new JButton("Botón 1"); button11.setToolTipText("label boton1"); area_texto1 = new JTextArea("",10,20); button21 = new JButton("Botón 2"); button21.setToolTipText("label boton2"); area_texto2 = new JTextArea("",10,20); .......... } } Java Swing import javax.swing.*; import java.awt.*; class ejemplo{ public static void main(String args[]){ ............ panel1.add(button11); panel1.add(area_texto1); panel2.add(button21); panel2.add(area_texto2); tabs.addTab("Panel 1",panel1); tabs.addTab("Panel 2",panel2); frame.setBounds(150,100,600,500); frame.getContentPane().add(tabs); frame.pack(); frame.setVisible(true); } } Java Swing