Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Componentes Complejos
Estos son componentes un poco más avanzados, cumplen con funciones más enfocadas
a procesos específicos y complejos, como por ejemplo obtener gran cantidad de
información de una base de datos, trabajo con nodos, colores entre otros.
• JTable – Permite vincular una tabla de datos con sus respectivas filas y columnas.
• JTree - Carga un árbol donde se establece cierta jerarquía visual, tipo directorio.
Componentes de Menús.
Estos componentes permiten vincular opciones de menú en nuestras ventanas, tipo menú
principal, como por ejemplo el conocido Inicio, Archivo, Edición etc..
Componentes de Texto.
Son todos aquellos que nos permiten procesar cadenas de texto, sea como entrada o
salida de información.
Componentes Atómicos
Los componentes atómicos son los elementos que no pueden almacenar otros objetos o
componentes gráficos, por ejemplo, un JPanel no es Atómico, ya que en el podemos
almacenar JButtons, JTextField entre otros...
• JSpinner – permite vincular una caja de texto con botones integrados para
seleccionar algún valor.
Acerca de Flickr
Flickr (casi con seguridad la mejor aplicación de todo el mundo para administrar y
compartir fotos en línea) tiene dos objetivos fundamentales:
1. Queremos ayudar a la gente a poner sus fotos a disposición de las personas que les
importan.
Tal vez quieren llevar un blog de momentos capturados en su teléfono con cámara, o
tal vez quieren presumir de sus mejores fotos o videos ante todo el mundo en un intento
de lograr fama cibernética. O tal vez quieren compartir fotos de sus hijos con sus
familiares de otras partes del país con seguridad y privacidad. ¡Flickr hace posibles todas
estas cosas y muchas más!
Para lograrlo, queremos colocar fotos y videos dentro y fuera del sistema de todos los
modos que podamos: desde la Web, desde dispositivos móviles, desde las computadoras
hogareñas de los usuarios y desde cualquier software que estén usando para administrar
su contenido. Y queremos poder hacerlos salir a la luz de todas las maneras posibles: en
el sitio Web de Flickr, en feeds RSS (Distribución realmente simple), por correo
electrónico, publicándolos en blogs externos, o de modos que aún no hemos pensado.
¿Si no para qué vamos a usar estos refrigeradores inteligentes?
Una vez que cambies a lo digital, es demasiado fácil abrumarse con la enorme cantidad
de fotos que tomas o video que filmas con ese inquieto dedo disparador. Los álbumes, el
modo principal con el que la gente organiza las cosas hoy en día, son estupendos... hasta
que llegas a tener 20 ó 30 ó 50 de ellos. Funcionaban bien en los días en que se
revelaban los rollos de película, pero la metáfora del "álbum" necesita desesperadamente
jubilarse y mudarse a un hogar para la tercera edad.
Parte de la solución está en hacer que el proceso de organizar fotos o videos sea
cooperativo. En Flickr, puedes darles permiso a tus amigos, familiares y otros contactos
para que organicen tus cosas (no sólo para que agreguen comentarios, sino también
notas y etiquetas). A la gente le gusta admirarse, reír, llorar y hacer bromas cuando
comparte fotos y videos. ¿Por qué no darle la posibilidad de hacer esto cuando las miran
por Internet? Y como toda esta información se acumula en forma de metadatos, más tarde
puedes encontrar las cosas mucho más fácilmente, porque esta información también se
puede buscar.
Eventos estructura sintáctica estructura
generados algorítmica
JtextField import javax.swing.*; El control JLabel
import java.awt.event.*; public class Formulario remplaza a la salida
extends JFrame implements estándar
ActionListener{ System.out print, el
private static final long serialVersionUID = 1L; control de
private final JTextField textfield1; JTextField cumple
private final JLabel label1; private final JButton la función de la
boton1; clase Scanner para
@SuppressWarnings("LeakingThisInConstructor") la entrada de datos.
public Formulario() {
setLayout(null);
label1=new JLabel("Usuario:");
label1.setBounds(10,10,100,30);
add(label1);
textfield1=new JTextField();
textfield1.setBounds(120,10,150,20);
add(textfield1);
boton1=new JButton("Aceptar");
boton1.setBounds(10,80,100,30);
add(boton1);
boton1.addActionListener(this);
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource()==boton1) {
String cad=textfield1.getText();
setTitle(cad);
}
}
public static void main(String[] ar) {
Formulario formulario1=new Formulario();
formulario1.setBounds(0,0,300,150);
formulario1.setVisible(true);
}
}
JButton import javax.swing.*; El tercer control
import java.awt.event.*; visual de uso muy
public class Formulario extends JFrame común es el que
implements ActionListener { provee la clase
private static final long JButton. Este
serialVersionUID = 1L; control visual
JButton boton1; muestra un botón.
public Formulario() { El proceso de
setLayout(null); añadir botones a
boton1=new JButton("Finalizar"); un control Jframe
boton1.setBounds(300,250,100,30); add(boton1); es similar a ñadir
boton1.addActionListener(this); } controles de tipo
@Override Jlabel, es decir
public void Java las
actionPerformed(ActionEvent e) { implementa el
if (e.getSource()==boton1) { concepto de
System.exit(0); interfaces para
} poder llamar a
} public static void main(String[] ar) { métodos de una
Formulario formulario1=new Formulario(); clase existente a
formulario1.setBounds(0,0,450,350); una clase
formulario1.setVisible(true); desarrollada
}
}
JFrame import javax.swing.*; La componente
public class Formulario extends JFrame{ básica que
private static final long requerimos cada
serialVersionUID = 1L; vez que
public Formulario() { implementamos una
setLayout(null); interfaz visual con
} la librería Swing es
public static void main(String[] ar) { la clase Jframe.
Formulario formulario1=new Esta clase
Formulario(); encapsulada a una
formulario1.setBounds(10,20,400,300); ventana clásica de
formulario1.setVisible(true); cualquier sistema
} operativo con
} entorno grafico
(Windows, OS X,
Linux).
JComboBox private static final long serialVersionUID = 1L; El control
private JComboBox combo1; JComboBox
@SuppressWarnings("unchecked") permite seleccionar
public Formulario() { un String de una
setLayout(null); lista. Es un evento
combo1=new JComboBox(); muy útil con este
combo1.setBounds(10,10,80,20); add(combo1); control es cuando el
combo1.addItem("rojo"); operador selecciona
combo1.addItem("vede"); un ítem de la lista.
combo1.addItem("azul"); Para capturar la
combo1.addItem("amarillo"); selección de un
combo1.addItem("negro"); ítem debemos
combo1.addItemListener(this); implementar la
} interface
@Override ItemListener que
public void itemStateChanged(ItemEvent e) { contiene un método
if (e.getSource()==combo1) { llamada
String ItemStateChanged
seleccionado=(String)combo1.getSelectedItem();
setTitle(seleccionado);
}
}
public static void main(String[] ar) {
Formulario formulario1=new
Formulario(); formulario1.setBounds(0,0,200,150);
formulario1.setVisible(true);
}
}
JCheckBox import java.awt.Component; El control
import javax.swing.*; JCheckBox permite
import javax.swing.event.*; implementar un
public class Formulario extends JFrame
implements ChangeListener{ cuadro de selección
private static final long serialVersionUID = 1L; básicamente un
private JCheckBox check1,check2,check3; public botón de dos
Formulario() { estados
setLayout(null);
check1=new JCheckBox("Inglés");
check1.setBounds(10,10,150,30);
check1.addChangeListener(this);
add(check1);
check2=new JCheckBox("Francés");
check2.setBounds(10,50,150,30);
check2.addChangeListener(this);
Component add = add(check2);
check3=new JCheckBox("Alemán");
check3.setBounds(10,90,150,30);
check3.addChangeListener(this);
add(check3);
}
@Override
public void stateChanged(ChangeEvent e){ String
cad="";
if (check1.isSelected()==true) {
cad += "Inglés-";
}
if (check2.isSelected()==true) {
cad += "Francés-";
}
if (check3.isSelected()==true) {
cad += "Alemán-"; }
setTitle(cad); }
public static void main(String[] ar) {
Formulario formulario1=new
Formulario();
formulario1.setBounds(0,0,300,200);
formulario1.setVisible(true);
}
}
Referencias
Ceballos, F. (2006). JAVA 2: Interfaces gráficas y aplicaciones para internet (2ª ed.).
Madrid: RA-MA.
Francisco Duran. (2007). Programación orientada a objetos con Java. España: Thomson.