SlideShare una empresa de Scribd logo
1 de 22
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
INSTITUTO TECNOLÓGICO DE FELIPE CARRILLO PUERTO
TOPICOS AVANZADOS DE PROGRAMACAION
UNIDAD 2 GUI
NIELS ARANA CUEVAS
Erwin Alexander Villegas Tun
Ángel Martin Pat Oribe
Jhonatan Candido Pat Chan
Rene Jesús Sosa Arana
Rubí Verónica Chimal Cuxin
4 SEMESTRE
J3-A ISC
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
GUI
Un evento es la notificación que hace un elemento gráfico cuando el usuario
interactúa con él. Por lo tanto, si se realiza alguna acción sobre algún elemento de
la interfaz, se dice que se ha generado un evento en dicho elemento.
Cuando hablamos de tipos de eventos podemos mencionar: Eventos de bajo nivel.
Estos son entradas o interacciones de bajo nivel con elementos del interfaz
gráfico
o Ejemplo: Cambio de tamaño, cambio del foco, operación con el ratón o
con el teclado.
package dskcapitulo4;
public class frmMenu extends javax.swing.JFrame {
public frmMenu() {
initComponents();
this.setVisible(true);
this.setExtendedState(6);
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
panelInterno = new javax.swing.JDesktopPane();
jMenuBar1 = new javax.swing.JMenuBar();
jMenu1 = new javax.swing.JMenu();
jMenuItem1 = new javax.swing.JMenuItem();
jMenu2 = new javax.swing.JMenu();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
panelInterno.setName("panelInterno"); // NOI18N
getContentPane().add(panelInterno, java.awt.BorderLayout.CENTER);
jMenuBar1.setName("jMenuBar1"); // NOI18N
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
jMenu1.setText("Formularios");
jMenu1.setName("jMenu1"); // NOI18N
jMenuItem1.setText("Mantenimiento de Empleados");
jMenuItem1.setName("jMenuItem1"); // NOI18N
jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem1ActionPerformed(evt);
}
});
jMenu1.add(jMenuItem1);
jMenuBar1.add(jMenu1);
jMenu2.setText("Salir");
jMenu2.setName("jMenu2"); // NOI18N
jMenuBar1.add(jMenu2);
setJMenuBar(jMenuBar1);
pack();
}// </editor-fold>
private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {
frmMantEmpleados frm = new frmMantEmpleados();
panelInterno.add(frm);
frm.setVisible(true);
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new frmMenu().setVisible(true);
}
});
}
private javax.swing.JMenu jMenu1;
private javax.swing.JMenu jMenu2;
private javax.swing.JMenuBar jMenuBar1;
private javax.swing.JMenuItem jMenuItem1;
private javax.swing.JDesktopPane panelInterno;
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
}
//forma base del formulario
Seguiremos con el contenido de la tabla formularios :
package dskcapitulo4;
public final class frmMantEmpleados extends javax.swing.JInternalFrame {
/** Crea el Nuevo formulario frmMantEmpleados */
private int anyoActual, fila;
Object[] filas= new Object[6];
javax.swing.table.DefaultTableModel modeloTabla = new
javax.swing.table.DefaultTableModel();
void configurarModelo()
{
modeloTabla.addColumn("Nombre");
modeloTabla.addColumn("Apellidos");
modeloTabla.addColumn("Año");
modeloTabla.addColumn("Edad");
modeloTabla.addColumn("Sexo");
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
modeloTabla.addColumn("Areas");
}
void CargarAnyos()
{
int i;
javax.swing.DefaultComboBoxModel modeloCombo = new
javax.swing.DefaultComboBoxModel();
java.util.Calendar fecha = java.util.Calendar.getInstance();
anyoActual = fecha.get(java.util.Calendar.YEAR);
for (i=1950;i<anyoActual;i++) {
modeloCombo.addElement(i);
}
cmbAnyos.setModel(modeloCombo);
}
void detEdad()
{
int edad = anyoActual - Integer.parseInt(cmbAnyos.getSelectedItem().toString());
lblEdad.setText(String.valueOf(edad));
}
public frmMantEmpleados() {
initComponents();
CargarAnyos();
configurarModelo();
detEdad();
}
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
@SuppressWarnings("unchecked")
private void initComponents() {
buttonGroup1 = new javax.swing.ButtonGroup();
buttonGroup2 = new javax.swing.ButtonGroup();
jPanel1 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
cmbAnyos = new javax.swing.JComboBox();
jLabel4 = new javax.swing.JLabel();
lblEdad = new javax.swing.JLabel();
jLabel6 = new javax.swing.JLabel();
rdFemenino = new javax.swing.JRadioButton();
rdMasculino = new javax.swing.JRadioButton();
txtApellidos= new javax.swing.JTextField();
txtNombre = new javax.swing.JTextField();
jLabel7 = new javax.swing.JLabel();
chkFutbol = new javax.swing.JCheckBox();
chkVoleiball = new javax.swing.JCheckBox();
chkOtro = new javax.swing.JCheckBox();
txtOtro = new javax.swing.JTextField();
jPanel2 = new javax.swing.JPanel();
jScrollPane1 = new javax.swing.JScrollPane();
tabEmpleados = new javax.swing.JTable();
btnAgregar = new javax.swing.JButton();
btnEliminar = new javax.swing.JButton();
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
btnModificar = new javax.swing.JButton();
btnCerrar = new javax.swing.JButton();
setClosable(true);
setResizable(true);
setTitle("Mantenimiento de Empleados");
setToolTipText("");
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Datos Generales
del Empleado", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
javax.swing.border.TitledBorder.DEFAULT_POSITION, null,java.awt.Color.black));
jPanel1.setName("jPanel1");
jLabel1.setText("Nombre del empleado:");
jLabel1.setName("jLabel1");
jLabel2.setText("Apellidos:");
jLabel2.setName("jLabel2");
jLabel3.setText("Año de nacimiento:");
jLabel3.setName("jLabel3");
cmbAnyos.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1",
"Item 2", "Item 3", "Item 4" }));
cmbAnyos.setName("cmbAnyos");
cmbAnyos.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
cmbAnyosItemStateChanged(evt);
}
});
jLabel4.setText("Edad:");
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
jLabel4.setName("jLabel4");
lblEdad.setBackground(new java.awt.Color(255, 255, 255));
lblEdad.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0,
0)));
lblEdad.setName("lblEdad");
jLabel6.setText("Sexo:");
jLabel6.setName("jLabel6");
buttonGroup1.add(rdFemenino);
rdFemenino.setSelected(true);
rdFemenino.setText("Femenino");
rdFemenino.setName("rdFemenino");
buttonGroup1.add(rdMasculino);
rdMasculino.setText("Masculino");
rdMasculino.setName("rdMasculino");
txtApellidos.setText("jTextField2");
txtApellidos.setName("txtApellidos");
txtNombre.setText("jTextField1");
txtNombre.setName("txtNombre");
jLabel7.setText("Areas de Interés:");
jLabel7.setName("jLabel7");
chkFutbol.setText("Fútbol");
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
chkFutbol.setName("chkFutbol");
chkVoleiball.setText("Voleiball");
chkVoleiball.setName("chkVoleiball");
chkOtro.setText("Otro");
chkOtro.setName("chkOtro");
txtOtro.setText("jTextField1");
txtOtro.setName("txtOtro");
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(jLabel3)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(cmbAnyos, javax.swing.GroupLayout.PREFERRED_SIZE, 79,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
.addComponent(jLabel4)
.addGap(10, 10, 10)
.addComponent(lblEdad, javax.swing.GroupLayout.PREFERRED_SIZE, 112,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(28, 28, 28)
.addComponent(jLabel6)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(rdMasculino)
.addComponent(rdFemenino)))
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 122,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 122,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(39, 39, 39)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txtApellidos,javax.swing.GroupLayout.DEFAULT_SIZE,
527, Short.MAX_VALUE)
.addComponent(txtNombre, javax.swing.GroupLayout.PREFERRED_SIZE,
143, javax.swing.GroupLayout.PREFERRED_SIZE)))))
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(18, 18, 18)
.addComponent(jLabel7)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(chkFutbol)
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
.addGap(33, 33, 33)
.addComponent(chkVoleiball)
.addGap(69, 69, 69)
.addComponent(chkOtro)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(txtOtro, javax.swing.GroupLayout.PREFERRED_SIZE, 301,
javax.swing.GroupLayout.PREFERRED_SIZE)))
.addContainerGap(45, javax.swing.GroupLayout.PREFERRED_SIZE))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 26,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtNombre, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 26,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtApellidos,javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
.addComponent(jLabel3)
.addComponent(cmbAnyos, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4)
.addComponent(lblEdad, javax.swing.GroupLayout.PREFERRED_SIZE, 20,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(rdFemenino)
.addComponent(jLabel6)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(rdMasculino)
.addGap(18, 18, 18)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel7)
.addComponent(chkFutbol)
.addComponent(chkVoleiball)
.addComponent(chkOtro)
.addComponent(txtOtro, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(28, Short.MAX_VALUE))
);
jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder("Lista de Empleados"));
jPanel2.setName("jPanel2"); // NOI18N
jScrollPane1.setName("jScrollPane1"); // NOI18N
tabEmpleados.setModel(new javax.swing.table.DefaultTableModel(
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
new Object [][] {
{null, null,null, null},
{null, null,null, null},
{null, null,null, null},
{null, null,null, null}
},
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4"
}
));
tabEmpleados.setName("tabEmpleados"); // NOI18N
tabEmpleados.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
tabEmpleadosMouseClicked(evt);
}
});
jScrollPane1.setViewportView(tabEmpleados);
javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 723,
Short.MAX_VALUE)
.addContainerGap())
);
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel2Layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 92,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
btnAgregar.setText("Agregar");
btnAgregar.setName("btnAgregar"); // NOI18N
btnAgregar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnAgregarActionPerformed(evt);
}
});
btnEliminar.setText("Eliminar");
btnEliminar.setName("btnEliminar"); // NOI18N
btnEliminar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnEliminarActionPerformed(evt);
}
});
btnModificar.setText("Modificar");
btnModificar.setName("btnModificar"); // NOI18N
btnModificar.addActionListener(new java.awt.event.ActionListener() {
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnModificarActionPerformed(evt);
}
});
btnCerrar.setText("Cerrar");
btnCerrar.setName("btnCerrar"); // NOI18N
btnCerrar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnCerrarActionPerformed(evt);
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(56, 56, 56)
.addComponent(btnAgregar, javax.swing.GroupLayout.PREFERRED_SIZE, 146,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(44, 44, 44)
.addComponent(btnModificar, javax.swing.GroupLayout.PREFERRED_SIZE, 146,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(34, 34, 34)
.addComponent(btnEliminar, javax.swing.GroupLayout.PREFERRED_SIZE, 146,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
.addComponent(btnCerrar, javax.swing.GroupLayout.PREFERRED_SIZE, 146,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(91, Short.MAX_VALUE))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGap(26, 26, 26)
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
.addGap(46, 46, 46))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(12, 12, 12)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(btnAgregar, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
javax.swing.GroupLayout.PREFERRED_SIZE)
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
.addComponent(btnModificar, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnEliminar, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnCerrar, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(39, Short.MAX_VALUE))
);
java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
setBounds((screenSize.width-843)/2, (screenSize.height-503)/2, 843, 503);
}
private void cmbAnyosItemStateChanged(java.awt.event.ItemEvent evt) {
detEdad();
}
void detDatos()
{
String AInteres="";
filas[0] = txtNombre.getText();
filas[1] = txtApellidos.getText();
filas[2] = cmbAnyos.getSelectedItem().toString();
filas[3] = lblEdad.getText();
if (rdMasculino.isSelected())
{filas[4] = "Masculino";}
else {filas[4] = "Femenino";}
if (chkFutbol.isSelected()) AInteres=chkFutbol.getText() + ", ";
if (chkVoleiball.isSelected()) AInteres= AInteres + chkVoleiball.getText()+", ";
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
if (chkOtro.isSelected()) AInteres = AInteres + txtOtro.getText();
filas[5] = AInteres;
}
private void btnAgregarActionPerformed(java.awt.event.ActionEvent evt) {
detDatos();
modeloTabla.addRow(filas);
tabEmpleados.setModel(modeloTabla);
}
private void tabEmpleadosMouseClicked(java.awt.event.MouseEvent evt) {
fila = tabEmpleados.rowAtPoint(evt.getPoint());
}
private void btnEliminarActionPerformed(java.awt.event.ActionEvent evt) {
modeloTabla.removeRow(fila);
tabEmpleados.setModel(modeloTabla);
}
private void btnModificarActionPerformed(java.awt.event.ActionEvent evt) {
detDatos();
for (int i=0;i<6;i++) //par alas 6 columnas de la table
modeloTabla.setValueAt (filas[i],fila,i);//cambie en el modelo por lo que tiene
//almacenado el vector filas
tabEmpleados.setModel(modeloTabla); //ode here:
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
}
private void btnCerrarActionPerformed(java.awt.event.ActionEvent evt) {
}
// declaración de variables
private javax.swing.JButton btnAgregar;
private javax.swing.JButton btnCerrar;
private javax.swing.JButton btnEliminar;
private javax.swing.JButton btnModificar;
private javax.swing.ButtonGroup buttonGroup1;
private javax.swing.ButtonGroup buttonGroup2;
private javax.swing.JCheckBox chkFutbol;
private javax.swing.JCheckBox chkOtro;
private javax.swing.JCheckBox chkVoleiball;
private javax.swing.JComboBox cmbAnyos;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JLabel lblEdad;
private javax.swing.JRadioButton rdFemenino;
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
private javax.swing.JRadioButton rdMasculino;
private javax.swing.JTable tabEmpleados;
private javax.swing.JTextFieldtxtApellidos;
private javax.swing.JTextFieldtxtNombre;
private javax.swing.JTextFieldtxtOtro;
}
En el código podemos darnos cuenta de las variables principales como lo son la
instrucción Object[] filas = new Object[6] declara un vector de objetos de 6
posiciones (6 celdas). Una variable de tipo Object define el estado básico y el
comportamiento de todos los objetos que deben tener para compararse entre sí,
para notificarse entre ellos, entre otros factores. Todos los objetos del entorno Java
heredan sus comportamientos desde la clase Object. En esta línea se declara una
variable Object que puede contener dentro de cada fila (en este caso son 6 filas)
datos de tipo primitivos tales como int, String o double. Se declara filas como Object,
siendo un vector, para que acepte en cada fila un dato de diferente tipo, lo cual en
un vector de tipo primitivo no sería posible.
Se crea una variable denominada modelo con la instrucción:
javax.swing.table.DefaultTableModel modelo = new javax.swing.table.DefaultTableModel()
para efectivamente crear un modelo de tipo tabla donde se cargarán los datos
provenientes de filas (Object) y finalmente el modelo será quien cargue el objeto
JTable (tabEmpleados). La forma de trabajar en Java para cargar un objeto JTable,
por ejemplo, es declar una variable de tipo Object en el cual se cargan las entradas
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
del usuario, posteriormente una variable de tipo JTable, JComboBox o JList y
trasladar ahí los datos de la variable Object. De la variable JTable, JComboBox o
JList se cargan los datos al objeto JTable, JComboBox o JList, propiamente (el
control).
Conclusión Rene Jesús Sosa Arana
Podemos concluir que la interfaz gráfica de usuario es un elemento
fundamental al momento de interactuar con el soft ware, ya que hace más
fácil el ent endimiento de sus funciones y sus caract erísticas al más amigable
con el usuario puest o que un mont ón de comandos en una t erminal no es
muy at ract iva
Conclusión Ángel Martin Pat Oribe
Est a unidad es de las más fáciles de ent ender y de las más visuales (por
obvias razones), dudo mucho que en pleno 2015 alguien se at reva a lanzar
soft ware sin int erfaz gráfica, a no ser que se t rate de algo ilegal o algo muy
personal, pienso que no t iene ninguna posibilidad de vender o si quiera ser
t omado en cuent a, las interfaces gráficas son ya el fut uro de las
aplicaciones t anto móviles como de comput adoras de escrit orio, sin ellas
volveríamos a los inicios de la comput ación con puros comandos y una
pant alla en blanco y negro.
Conclusión Erwin Alexander Villegas Tun
El manejo de int erfaz en Net beans es algo muy eficaz ya hacen más fácil la
creación de vent anas y bot ones. Est o hacen que el sist ema se vea mucho
mejor que simples líneas de códigos. Además de que a los usuarios que
t rabajen con dichas aplicaciones se lea haga más sencillo el manejo del
sist ema, ya que se les present a de una manera amigable y sencilla según
los desarrolladores. Existen una gran variedad de herramientas al momento
de usar interfaz, y exist en variedades de formas para elaborarlas, en ella se
implementa el uso de event os y escuchadores. Net beans es uno de los IDE
que facilitan el uso de int erfaz ya que se puede implementar con el simple
uso de arrast rar las herramient as que se necesit an.
“2013; Año de Belisario Domínguez”
“2013; Año por una Cultura de Conservación Ambiental”
Conclusión Jhonatan Candido Pat Chan
Podemos llamar Interfaz Gráfica GUI (Graphical User Interface) al conjunto
de componentes gráficos que posibilitan la interacción entre el usuario y la
aplicación. Es decir ventas, botones, combos, listas, cajas de diálogo,
campos de texto, etc. Primero tenemos que diseñar la aplicación,
programarla y por último los eventos que se generan a medida que el
usuario interactúacon la Interfaz.Los componentes son objetos de las clases
que heredan de la clase base componente como Button, List, TextField,
TextArea, Label, etc. En reseña esto hasta el más novato puede hacer una
interfaz por medio de la paleta de objetos Swing que trae NetBeans, y si no
puede no es un Ingeniero en sistemas.
Conclusión Rubí Verónica Chimal Cuxin
En est a unidad nos percat amos de cómo funcionan las int erfaces graficas
en un programa, que en un sist ema a realizar son muy importantes. Es una
manera agradable y de gran ut ilidad en el desarrollo de nuevos soft ware,
t odo est o fue de mucha ut ilidad al implementarlo en el proyect o integrador
ya que se le dio una int erfaz amigable para el usuario. Saber esta
información nos ayudara mucho en nuest ra vida laboral fut ura y nos
brindara una oport unidad de realizar proyect os que nos agraden.

Más contenido relacionado

Último

Razones_para_estar_en_contra_del_aborto.pdf
Razones_para_estar_en_contra_del_aborto.pdfRazones_para_estar_en_contra_del_aborto.pdf
Razones_para_estar_en_contra_del_aborto.pdf
KristellCordova
 
sistema político Mariangel Adjam Mapa mental
sistema político Mariangel Adjam Mapa mentalsistema político Mariangel Adjam Mapa mental
sistema político Mariangel Adjam Mapa mental
MariangelAdjam
 

Último (12)

ciberseguridad y seguridad informatica- alex jaren.pptx
ciberseguridad y seguridad informatica- alex jaren.pptxciberseguridad y seguridad informatica- alex jaren.pptx
ciberseguridad y seguridad informatica- alex jaren.pptx
 
PARTES DE LA PANTALLA DE POWER POINT.pptx
PARTES DE LA PANTALLA DE POWER POINT.pptxPARTES DE LA PANTALLA DE POWER POINT.pptx
PARTES DE LA PANTALLA DE POWER POINT.pptx
 
Presentacion De Imagenes Digitales Y Navegadores De Internet.
Presentacion De Imagenes Digitales Y Navegadores De Internet.Presentacion De Imagenes Digitales Y Navegadores De Internet.
Presentacion De Imagenes Digitales Y Navegadores De Internet.
 
Razones_para_estar_en_contra_del_aborto.pdf
Razones_para_estar_en_contra_del_aborto.pdfRazones_para_estar_en_contra_del_aborto.pdf
Razones_para_estar_en_contra_del_aborto.pdf
 
PerezGallegos_Claudia_M1S3Al6.pptx las tic en la vida cotidiana
PerezGallegos_Claudia_M1S3Al6.pptx las tic en la vida cotidianaPerezGallegos_Claudia_M1S3Al6.pptx las tic en la vida cotidiana
PerezGallegos_Claudia_M1S3Al6.pptx las tic en la vida cotidiana
 
Cuadernooooooo_ESI_Secundaria_2_2017.pdf
Cuadernooooooo_ESI_Secundaria_2_2017.pdfCuadernooooooo_ESI_Secundaria_2_2017.pdf
Cuadernooooooo_ESI_Secundaria_2_2017.pdf
 
Imagen creada en photopea con el fin de informar acerca de los navegadores web.
Imagen creada en photopea con el fin de informar acerca de los navegadores web.Imagen creada en photopea con el fin de informar acerca de los navegadores web.
Imagen creada en photopea con el fin de informar acerca de los navegadores web.
 
sistema político Mariangel Adjam Mapa mental
sistema político Mariangel Adjam Mapa mentalsistema político Mariangel Adjam Mapa mental
sistema político Mariangel Adjam Mapa mental
 
P7_E1_DanielPoza.pdf Los avances en los sistemas de comunicascion y su difusi...
P7_E1_DanielPoza.pdf Los avances en los sistemas de comunicascion y su difusi...P7_E1_DanielPoza.pdf Los avances en los sistemas de comunicascion y su difusi...
P7_E1_DanielPoza.pdf Los avances en los sistemas de comunicascion y su difusi...
 
Dominios_De_Internet.pdf
Dominios_De_Internet.pdfDominios_De_Internet.pdf
Dominios_De_Internet.pdf
 
COMO PUBLICAR UNA PRESENTACION GRAFICA EN INTERNET .pptx
COMO PUBLICAR UNA PRESENTACION GRAFICA EN INTERNET .pptxCOMO PUBLICAR UNA PRESENTACION GRAFICA EN INTERNET .pptx
COMO PUBLICAR UNA PRESENTACION GRAFICA EN INTERNET .pptx
 
Manual-Microsoft-Office-Excel-2i010-basico.pdf
Manual-Microsoft-Office-Excel-2i010-basico.pdfManual-Microsoft-Office-Excel-2i010-basico.pdf
Manual-Microsoft-Office-Excel-2i010-basico.pdf
 

Destacado

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Destacado (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Unidad 2 isc j3 gui (cb)

  • 1. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” INSTITUTO TECNOLÓGICO DE FELIPE CARRILLO PUERTO TOPICOS AVANZADOS DE PROGRAMACAION UNIDAD 2 GUI NIELS ARANA CUEVAS Erwin Alexander Villegas Tun Ángel Martin Pat Oribe Jhonatan Candido Pat Chan Rene Jesús Sosa Arana Rubí Verónica Chimal Cuxin 4 SEMESTRE J3-A ISC
  • 2. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” GUI Un evento es la notificación que hace un elemento gráfico cuando el usuario interactúa con él. Por lo tanto, si se realiza alguna acción sobre algún elemento de la interfaz, se dice que se ha generado un evento en dicho elemento. Cuando hablamos de tipos de eventos podemos mencionar: Eventos de bajo nivel. Estos son entradas o interacciones de bajo nivel con elementos del interfaz gráfico o Ejemplo: Cambio de tamaño, cambio del foco, operación con el ratón o con el teclado. package dskcapitulo4; public class frmMenu extends javax.swing.JFrame { public frmMenu() { initComponents(); this.setVisible(true); this.setExtendedState(6); } @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code"> private void initComponents() { panelInterno = new javax.swing.JDesktopPane(); jMenuBar1 = new javax.swing.JMenuBar(); jMenu1 = new javax.swing.JMenu(); jMenuItem1 = new javax.swing.JMenuItem(); jMenu2 = new javax.swing.JMenu(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); panelInterno.setName("panelInterno"); // NOI18N getContentPane().add(panelInterno, java.awt.BorderLayout.CENTER); jMenuBar1.setName("jMenuBar1"); // NOI18N
  • 3. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” jMenu1.setText("Formularios"); jMenu1.setName("jMenu1"); // NOI18N jMenuItem1.setText("Mantenimiento de Empleados"); jMenuItem1.setName("jMenuItem1"); // NOI18N jMenuItem1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jMenuItem1ActionPerformed(evt); } }); jMenu1.add(jMenuItem1); jMenuBar1.add(jMenu1); jMenu2.setText("Salir"); jMenu2.setName("jMenu2"); // NOI18N jMenuBar1.add(jMenu2); setJMenuBar(jMenuBar1); pack(); }// </editor-fold> private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) { frmMantEmpleados frm = new frmMantEmpleados(); panelInterno.add(frm); frm.setVisible(true); } public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new frmMenu().setVisible(true); } }); } private javax.swing.JMenu jMenu1; private javax.swing.JMenu jMenu2; private javax.swing.JMenuBar jMenuBar1; private javax.swing.JMenuItem jMenuItem1; private javax.swing.JDesktopPane panelInterno;
  • 4. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” } //forma base del formulario Seguiremos con el contenido de la tabla formularios : package dskcapitulo4; public final class frmMantEmpleados extends javax.swing.JInternalFrame { /** Crea el Nuevo formulario frmMantEmpleados */ private int anyoActual, fila; Object[] filas= new Object[6]; javax.swing.table.DefaultTableModel modeloTabla = new javax.swing.table.DefaultTableModel(); void configurarModelo() { modeloTabla.addColumn("Nombre"); modeloTabla.addColumn("Apellidos"); modeloTabla.addColumn("Año"); modeloTabla.addColumn("Edad"); modeloTabla.addColumn("Sexo");
  • 5. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” modeloTabla.addColumn("Areas"); } void CargarAnyos() { int i; javax.swing.DefaultComboBoxModel modeloCombo = new javax.swing.DefaultComboBoxModel(); java.util.Calendar fecha = java.util.Calendar.getInstance(); anyoActual = fecha.get(java.util.Calendar.YEAR); for (i=1950;i<anyoActual;i++) { modeloCombo.addElement(i); } cmbAnyos.setModel(modeloCombo); } void detEdad() { int edad = anyoActual - Integer.parseInt(cmbAnyos.getSelectedItem().toString()); lblEdad.setText(String.valueOf(edad)); } public frmMantEmpleados() { initComponents(); CargarAnyos(); configurarModelo(); detEdad(); }
  • 6. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” @SuppressWarnings("unchecked") private void initComponents() { buttonGroup1 = new javax.swing.ButtonGroup(); buttonGroup2 = new javax.swing.ButtonGroup(); jPanel1 = new javax.swing.JPanel(); jLabel1 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); jLabel3 = new javax.swing.JLabel(); cmbAnyos = new javax.swing.JComboBox(); jLabel4 = new javax.swing.JLabel(); lblEdad = new javax.swing.JLabel(); jLabel6 = new javax.swing.JLabel(); rdFemenino = new javax.swing.JRadioButton(); rdMasculino = new javax.swing.JRadioButton(); txtApellidos= new javax.swing.JTextField(); txtNombre = new javax.swing.JTextField(); jLabel7 = new javax.swing.JLabel(); chkFutbol = new javax.swing.JCheckBox(); chkVoleiball = new javax.swing.JCheckBox(); chkOtro = new javax.swing.JCheckBox(); txtOtro = new javax.swing.JTextField(); jPanel2 = new javax.swing.JPanel(); jScrollPane1 = new javax.swing.JScrollPane(); tabEmpleados = new javax.swing.JTable(); btnAgregar = new javax.swing.JButton(); btnEliminar = new javax.swing.JButton();
  • 7. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” btnModificar = new javax.swing.JButton(); btnCerrar = new javax.swing.JButton(); setClosable(true); setResizable(true); setTitle("Mantenimiento de Empleados"); setToolTipText(""); jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Datos Generales del Empleado", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, null,java.awt.Color.black)); jPanel1.setName("jPanel1"); jLabel1.setText("Nombre del empleado:"); jLabel1.setName("jLabel1"); jLabel2.setText("Apellidos:"); jLabel2.setName("jLabel2"); jLabel3.setText("Año de nacimiento:"); jLabel3.setName("jLabel3"); cmbAnyos.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" })); cmbAnyos.setName("cmbAnyos"); cmbAnyos.addItemListener(new java.awt.event.ItemListener() { public void itemStateChanged(java.awt.event.ItemEvent evt) { cmbAnyosItemStateChanged(evt); } }); jLabel4.setText("Edad:");
  • 8. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” jLabel4.setName("jLabel4"); lblEdad.setBackground(new java.awt.Color(255, 255, 255)); lblEdad.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0))); lblEdad.setName("lblEdad"); jLabel6.setText("Sexo:"); jLabel6.setName("jLabel6"); buttonGroup1.add(rdFemenino); rdFemenino.setSelected(true); rdFemenino.setText("Femenino"); rdFemenino.setName("rdFemenino"); buttonGroup1.add(rdMasculino); rdMasculino.setText("Masculino"); rdMasculino.setName("rdMasculino"); txtApellidos.setText("jTextField2"); txtApellidos.setName("txtApellidos"); txtNombre.setText("jTextField1"); txtNombre.setName("txtNombre"); jLabel7.setText("Areas de Interés:"); jLabel7.setName("jLabel7"); chkFutbol.setText("Fútbol");
  • 9. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” chkFutbol.setName("chkFutbol"); chkVoleiball.setText("Voleiball"); chkVoleiball.setName("chkVoleiball"); chkOtro.setText("Otro"); chkOtro.setName("chkOtro"); txtOtro.setText("jTextField1"); txtOtro.setName("txtOtro"); javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); jPanel1.setLayout(jPanel1Layout); jPanel1Layout.setHorizontalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addContainerGap() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addComponent(jLabel3) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(cmbAnyos, javax.swing.GroupLayout.PREFERRED_SIZE, 79, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
  • 10. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” .addComponent(jLabel4) .addGap(10, 10, 10) .addComponent(lblEdad, javax.swing.GroupLayout.PREFERRED_SIZE, 112, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(28, 28, 28) .addComponent(jLabel6) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(rdMasculino) .addComponent(rdFemenino))) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 122, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 122, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(39, 39, 39) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(txtApellidos,javax.swing.GroupLayout.DEFAULT_SIZE, 527, Short.MAX_VALUE) .addComponent(txtNombre, javax.swing.GroupLayout.PREFERRED_SIZE, 143, javax.swing.GroupLayout.PREFERRED_SIZE))))) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(18, 18, 18) .addComponent(jLabel7) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(chkFutbol)
  • 11. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” .addGap(33, 33, 33) .addComponent(chkVoleiball) .addGap(69, 69, 69) .addComponent(chkOtro) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(txtOtro, javax.swing.GroupLayout.PREFERRED_SIZE, 301, javax.swing.GroupLayout.PREFERRED_SIZE))) .addContainerGap(45, javax.swing.GroupLayout.PREFERRED_SIZE)) ); jPanel1Layout.setVerticalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addContainerGap() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(txtNombre, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(txtApellidos,javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(18, 18, 18) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  • 12. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” .addComponent(jLabel3) .addComponent(cmbAnyos, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel4) .addComponent(lblEdad, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(rdFemenino) .addComponent(jLabel6))) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(rdMasculino) .addGap(18, 18, 18) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel7) .addComponent(chkFutbol) .addComponent(chkVoleiball) .addComponent(chkOtro) .addComponent(txtOtro, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addContainerGap(28, Short.MAX_VALUE)) ); jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder("Lista de Empleados")); jPanel2.setName("jPanel2"); // NOI18N jScrollPane1.setName("jScrollPane1"); // NOI18N tabEmpleados.setModel(new javax.swing.table.DefaultTableModel(
  • 13. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” new Object [][] { {null, null,null, null}, {null, null,null, null}, {null, null,null, null}, {null, null,null, null} }, new String [] { "Title 1", "Title 2", "Title 3", "Title 4" } )); tabEmpleados.setName("tabEmpleados"); // NOI18N tabEmpleados.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { tabEmpleadosMouseClicked(evt); } }); jScrollPane1.setViewportView(tabEmpleados); javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); jPanel2.setLayout(jPanel2Layout); jPanel2Layout.setHorizontalGroup( jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel2Layout.createSequentialGroup() .addContainerGap() .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 723, Short.MAX_VALUE) .addContainerGap()) );
  • 14. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” jPanel2Layout.setVerticalGroup( jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup() .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap()) ); btnAgregar.setText("Agregar"); btnAgregar.setName("btnAgregar"); // NOI18N btnAgregar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnAgregarActionPerformed(evt); } }); btnEliminar.setText("Eliminar"); btnEliminar.setName("btnEliminar"); // NOI18N btnEliminar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnEliminarActionPerformed(evt); } }); btnModificar.setText("Modificar"); btnModificar.setName("btnModificar"); // NOI18N btnModificar.addActionListener(new java.awt.event.ActionListener() {
  • 15. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” public void actionPerformed(java.awt.event.ActionEvent evt) { btnModificarActionPerformed(evt); } }); btnCerrar.setText("Cerrar"); btnCerrar.setName("btnCerrar"); // NOI18N btnCerrar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnCerrarActionPerformed(evt); } }); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(56, 56, 56) .addComponent(btnAgregar, javax.swing.GroupLayout.PREFERRED_SIZE, 146, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(44, 44, 44) .addComponent(btnModificar, javax.swing.GroupLayout.PREFERRED_SIZE, 146, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(34, 34, 34) .addComponent(btnEliminar, javax.swing.GroupLayout.PREFERRED_SIZE, 146, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18)
  • 16. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” .addComponent(btnCerrar, javax.swing.GroupLayout.PREFERRED_SIZE, 146, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(91, Short.MAX_VALUE)) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(layout.createSequentialGroup() .addGap(26, 26, 26) .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))) .addGap(46, 46, 46)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(12, 12, 12) .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(btnAgregar, javax.swing.GroupLayout.PREFERRED_SIZE, 49, javax.swing.GroupLayout.PREFERRED_SIZE)
  • 17. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” .addComponent(btnModificar, javax.swing.GroupLayout.PREFERRED_SIZE, 49, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(btnEliminar, javax.swing.GroupLayout.PREFERRED_SIZE, 49, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(btnCerrar, javax.swing.GroupLayout.PREFERRED_SIZE, 49, javax.swing.GroupLayout.PREFERRED_SIZE)) .addContainerGap(39, Short.MAX_VALUE)) ); java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); setBounds((screenSize.width-843)/2, (screenSize.height-503)/2, 843, 503); } private void cmbAnyosItemStateChanged(java.awt.event.ItemEvent evt) { detEdad(); } void detDatos() { String AInteres=""; filas[0] = txtNombre.getText(); filas[1] = txtApellidos.getText(); filas[2] = cmbAnyos.getSelectedItem().toString(); filas[3] = lblEdad.getText(); if (rdMasculino.isSelected()) {filas[4] = "Masculino";} else {filas[4] = "Femenino";} if (chkFutbol.isSelected()) AInteres=chkFutbol.getText() + ", "; if (chkVoleiball.isSelected()) AInteres= AInteres + chkVoleiball.getText()+", ";
  • 18. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” if (chkOtro.isSelected()) AInteres = AInteres + txtOtro.getText(); filas[5] = AInteres; } private void btnAgregarActionPerformed(java.awt.event.ActionEvent evt) { detDatos(); modeloTabla.addRow(filas); tabEmpleados.setModel(modeloTabla); } private void tabEmpleadosMouseClicked(java.awt.event.MouseEvent evt) { fila = tabEmpleados.rowAtPoint(evt.getPoint()); } private void btnEliminarActionPerformed(java.awt.event.ActionEvent evt) { modeloTabla.removeRow(fila); tabEmpleados.setModel(modeloTabla); } private void btnModificarActionPerformed(java.awt.event.ActionEvent evt) { detDatos(); for (int i=0;i<6;i++) //par alas 6 columnas de la table modeloTabla.setValueAt (filas[i],fila,i);//cambie en el modelo por lo que tiene //almacenado el vector filas tabEmpleados.setModel(modeloTabla); //ode here:
  • 19. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” } private void btnCerrarActionPerformed(java.awt.event.ActionEvent evt) { } // declaración de variables private javax.swing.JButton btnAgregar; private javax.swing.JButton btnCerrar; private javax.swing.JButton btnEliminar; private javax.swing.JButton btnModificar; private javax.swing.ButtonGroup buttonGroup1; private javax.swing.ButtonGroup buttonGroup2; private javax.swing.JCheckBox chkFutbol; private javax.swing.JCheckBox chkOtro; private javax.swing.JCheckBox chkVoleiball; private javax.swing.JComboBox cmbAnyos; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel4; private javax.swing.JLabel jLabel6; private javax.swing.JLabel jLabel7; private javax.swing.JPanel jPanel1; private javax.swing.JPanel jPanel2; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JLabel lblEdad; private javax.swing.JRadioButton rdFemenino;
  • 20. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” private javax.swing.JRadioButton rdMasculino; private javax.swing.JTable tabEmpleados; private javax.swing.JTextFieldtxtApellidos; private javax.swing.JTextFieldtxtNombre; private javax.swing.JTextFieldtxtOtro; } En el código podemos darnos cuenta de las variables principales como lo son la instrucción Object[] filas = new Object[6] declara un vector de objetos de 6 posiciones (6 celdas). Una variable de tipo Object define el estado básico y el comportamiento de todos los objetos que deben tener para compararse entre sí, para notificarse entre ellos, entre otros factores. Todos los objetos del entorno Java heredan sus comportamientos desde la clase Object. En esta línea se declara una variable Object que puede contener dentro de cada fila (en este caso son 6 filas) datos de tipo primitivos tales como int, String o double. Se declara filas como Object, siendo un vector, para que acepte en cada fila un dato de diferente tipo, lo cual en un vector de tipo primitivo no sería posible. Se crea una variable denominada modelo con la instrucción: javax.swing.table.DefaultTableModel modelo = new javax.swing.table.DefaultTableModel() para efectivamente crear un modelo de tipo tabla donde se cargarán los datos provenientes de filas (Object) y finalmente el modelo será quien cargue el objeto JTable (tabEmpleados). La forma de trabajar en Java para cargar un objeto JTable, por ejemplo, es declar una variable de tipo Object en el cual se cargan las entradas
  • 21. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” del usuario, posteriormente una variable de tipo JTable, JComboBox o JList y trasladar ahí los datos de la variable Object. De la variable JTable, JComboBox o JList se cargan los datos al objeto JTable, JComboBox o JList, propiamente (el control). Conclusión Rene Jesús Sosa Arana Podemos concluir que la interfaz gráfica de usuario es un elemento fundamental al momento de interactuar con el soft ware, ya que hace más fácil el ent endimiento de sus funciones y sus caract erísticas al más amigable con el usuario puest o que un mont ón de comandos en una t erminal no es muy at ract iva Conclusión Ángel Martin Pat Oribe Est a unidad es de las más fáciles de ent ender y de las más visuales (por obvias razones), dudo mucho que en pleno 2015 alguien se at reva a lanzar soft ware sin int erfaz gráfica, a no ser que se t rate de algo ilegal o algo muy personal, pienso que no t iene ninguna posibilidad de vender o si quiera ser t omado en cuent a, las interfaces gráficas son ya el fut uro de las aplicaciones t anto móviles como de comput adoras de escrit orio, sin ellas volveríamos a los inicios de la comput ación con puros comandos y una pant alla en blanco y negro. Conclusión Erwin Alexander Villegas Tun El manejo de int erfaz en Net beans es algo muy eficaz ya hacen más fácil la creación de vent anas y bot ones. Est o hacen que el sist ema se vea mucho mejor que simples líneas de códigos. Además de que a los usuarios que t rabajen con dichas aplicaciones se lea haga más sencillo el manejo del sist ema, ya que se les present a de una manera amigable y sencilla según los desarrolladores. Existen una gran variedad de herramientas al momento de usar interfaz, y exist en variedades de formas para elaborarlas, en ella se implementa el uso de event os y escuchadores. Net beans es uno de los IDE que facilitan el uso de int erfaz ya que se puede implementar con el simple uso de arrast rar las herramient as que se necesit an.
  • 22. “2013; Año de Belisario Domínguez” “2013; Año por una Cultura de Conservación Ambiental” Conclusión Jhonatan Candido Pat Chan Podemos llamar Interfaz Gráfica GUI (Graphical User Interface) al conjunto de componentes gráficos que posibilitan la interacción entre el usuario y la aplicación. Es decir ventas, botones, combos, listas, cajas de diálogo, campos de texto, etc. Primero tenemos que diseñar la aplicación, programarla y por último los eventos que se generan a medida que el usuario interactúacon la Interfaz.Los componentes son objetos de las clases que heredan de la clase base componente como Button, List, TextField, TextArea, Label, etc. En reseña esto hasta el más novato puede hacer una interfaz por medio de la paleta de objetos Swing que trae NetBeans, y si no puede no es un Ingeniero en sistemas. Conclusión Rubí Verónica Chimal Cuxin En est a unidad nos percat amos de cómo funcionan las int erfaces graficas en un programa, que en un sist ema a realizar son muy importantes. Es una manera agradable y de gran ut ilidad en el desarrollo de nuevos soft ware, t odo est o fue de mucha ut ilidad al implementarlo en el proyect o integrador ya que se le dio una int erfaz amigable para el usuario. Saber esta información nos ayudara mucho en nuest ra vida laboral fut ura y nos brindara una oport unidad de realizar proyect os que nos agraden.