Presentacion

Luiggi Inga Barboza
Luiggi Inga BarbozaUniversidad Nacional Pedro Ruiz Gallo (Sitio Oficial)
PRESENTACION<br />En el Paquete Presentación  se ha creado  cuatro frames, de los cuales tres depende de un principal llamado frmPrincipal  el cual llama a los demás instanciándolos como se observa aquí:<br />frmPrincipal:<br />Pare esto se ha creado un contenedor en el frmPrincipal en donde podremos tener a los demás frames para esto se ha creado:<br />public class frmPrincipal extends javax.swing.JFrame {<br />    public frmPrincipal() {<br />        initComponents();<br />        setExtendedState(javax.swing.JFrame.MAXIMIZED_BOTH);<br />}<br />En la parte superior de este frame se han creado 4 items de menú  <br />Los otros frames se llaman así:<br />frmCursos ofrmCursos = new frmCursos();<br />        pnlPrincipal.add(ofrmCursos);<br />        ofrmCursos.setVisible(true);<br />A continuación se explicara el frame curso el cual el principal para registrar a cada curso. <br />Para esto se ha creado al igual que en FrmAlumnos  y frmNotas  su respectivo  modelo   <br />En estemodelo en realidad es una clase hija de AbstractTableModel {} que esta en implementada en java,esta clase es modificada para luego ser utilizada en presentacion en su respectiva tabla:<br />Los metodos que han sidomodificados son los siguientes:<br />getRowCount() {}  devuelve el numero de filas<br />getColumnCount() {}devuelve el numero de columnas <br />getColumnName(int columnIndex) {} devuelve el numero de columnas<br />getValueAt(int rowIndex, int columnIndex) {}toma los valores que se encuentran en la tabla<br />isCellEditable(int rowIndex, int columnIndex) {}devuelve si puede ser o no editable<br />setValueAt(Object aValue, int rowIndex, int columnIndex) {}devuelve los valores de cada celda <br />if(aValue!= null) {<br />if(aValue.toString().isEmpty()) {<br />                datos.get(rowIndex).getNotas().get(columnIndex - 2).setValor(-1.0);<br />            }<br />            else {<br />                if(esnumero(aValue.toString())==true){<br />          datos.get(rowIndex).getNotas().get(columnIndex -  2).setValor (Double.parseDouble (aValue. toString( )));<br />                }<br />                Calculadora calculadora = new Calculadora();<br />                Double promedio = calculadora.Calcular(datos.get(rowIndex).getOCurso().getFormula(), datos.get(rowIndex).getNotas());<br />                datos.get(rowIndex).setPromedio(promedio);<br />            }<br />            fireTableCellUpdated(rowIndex, columnIndex);<br />            fireTableCellUpdated(rowIndex, datos.get(rowIndex).getNotas().size() + 2);<br />        }<br />Como podemos observar este es el metodo mas importante puesto q en el se ejecutara el promedio lamando a los metodos que se encuentran en la logica Negocios:”calculadora”  y posteriormente promedio.<br />Como vemos primero se evalua si se encuentran llenas las cedas de de la tabla y luego pasamos  estos valores a la clase calculadora donde se devolvera el resultado promedio de la formula ya extraida.<br />Auxiliarmente hemos creido convenientemente crear <br />    public boolean esnumero(String numero){<br />        numero= numero.toUpperCase();<br />        int con=0;<br />        for (int i = 0; i < numero.length(); i++) {<br />            if(numero.substring(i, i+1).equals(quot;
.quot;
)//||numero(numero.substring(i, i+1))==false<br />              ){<br />                con=con+1;<br />            }<br />        }<br />        if(con>1){<br />            return false;<br />        }else{<br />            return true;<br />        }<br />    }<br />Este metodo es utilizado con elfin dequeen la tabla solo seingrese dato s doubles y no alla algun error como elde ingresar dobles puntos.<br />Parapoder entendermejor el proyectopsare a explicar el uso del frame notas:<br />public frmNotas() {<br />        initComponents();<br />        this.setLocation(Toolkit.getDefaultToolkit().getScreenSize().width / 2 - this.getWidth() / 2,Toolkit.getDefaultToolkit().getScreenSize().height / 2 - this.getHeight() / 2 );<br />        PresentarCursos();<br />    }<br />    private void PresentarCursos() {<br />        GestionNotas gestionNotas = new GestionNotas();<br />        try {<br />            cboCurso.setModel(new DefaultComboBoxModel(gestionNotas.ConsultarCursos(quot;
quot;
, quot;
quot;
).toArray()));<br />        }<br />        catch(Exception e) {<br />            System.out.println(quot;
ERRORquot;
);<br />        }<br />    }<br />En este metodo al tenerelcombo de alumnos se ha creado un combo por default seconsultan todos los cursos los cuales son agregadosen un array y a su vez sonpresentado en elframe medianteel combo    con el metodo PresentarCursos() {}<br />Luego se llama al siguiente metodo;<br />    private void PresentarAlumnos() {<br />        GestionNotas gestionNotas = new GestionNotas();<br />        try {<br />            Curso curso = ((Curso)(cboCurso.getSelectedItem()));<br />            List<String> columnas = new ArrayList<String>();<br />            columnas.add(quot;
Codigoquot;
);<br />            columnas.add(quot;
Nombrequot;
);<br />            <br />            for(int i=0;i<curso.getTiposEvaluaciones().size();i++) {<br />                columnas.add(curso.getTiposEvaluaciones().get(i));<br />            }<br />            columnas.add(quot;
Promedioquot;
);<br />            tblNotas.setModel(new ModeloNotas(columnas , gestionNotas.ConsultarAlumnos(quot;
quot;
, quot;
quot;
,(Curso)(cboCurso.getSelectedItem()))));<br />            //tblNotas.setModel(new ModeloNotas(columnas,gestionNotas.ConsultarAlumnos(quot;
quot;
, quot;
quot;
,curso))));<br />            tblNotas.setDefaultRenderer(Object.class, new MiRender());<br />     <br />        }<br />        catch(Exception e) {<br />            System.out.println(quot;
ERROR1111quot;
);<br />        }<br />    }<br />Este metodo llama al modelo de alumnos y en este es presentado, a la vez se ha usado una clase por defauld de tabla:<br />public class MiRender extends DefaultTableCellRenderer {<br />        @Override<br />public Component getTableCellRendererComponent(JTable table,<br />Object value, boolean isSelected, boolean hasFocus, int row,<br />int column) {<br />            if(column>1){<br />Component cell = super.getTableCellRendererComponent(table, value,<br />isSelected, hasFocus, row, column);<br />//cell.setBackground(Color.BLUE);<br />if(value!=null){<br />                    if(value.toString().compareTo(quot;
0quot;
)>=0 && value.toString().compareTo(quot;
10.5quot;
)<0<br />                      )<br />                        //Double.parseDouble(value.toString())>0&&Double.parseDouble(value.toString())<10.5)<br />                        cell.setForeground(Color.red);<br />                    else<br />                        cell.setForeground(Color.blue);<br />                }<br />                return cell;<br />            }else{<br />                Component cell = super.getTableCellRendererComponent(table, value,<br />isSelected, hasFocus, row, column);<br />//cell.setBackground(Color.GREEN);<br />cell.setForeground(Color.BLACK);<br />                                <br />                return cell;<br />            }<br />}<br />    }<br />En esta se le asigna colores a las notas si son 10 a 10.5 o 0 a 1 las muestra de color rojo.<br /> <br />
Presentacion
Presentacion
Presentacion
Presentacion
Presentacion
Presentacion

Recomendados

Metodos en java von
Metodos en javaMetodos en java
Metodos en javaaleja0940
12.1K views26 Folien
5.instrucciones de control en java parte2 von
5.instrucciones de control en java parte25.instrucciones de control en java parte2
5.instrucciones de control en java parte2Ramiro Estigarribia Canese
639 views24 Folien
Máximos Y Mínimos von
Máximos Y MínimosMáximos Y Mínimos
Máximos Y Mínimoskevin lopez
56 views10 Folien
Maximos y minimos von
Maximos y minimosMaximos y minimos
Maximos y minimoskevin lopez
54 views22 Folien
Ejercicio propuesto 2 von
Ejercicio propuesto 2Ejercicio propuesto 2
Ejercicio propuesto 2jfranco_123
4.6K views8 Folien
11 estructuras de repeticion-tema11 von
11 estructuras de repeticion-tema1111 estructuras de repeticion-tema11
11 estructuras de repeticion-tema11Elba Sepúlveda
3.2K views53 Folien

Más contenido relacionado

Was ist angesagt?

Informe tecnicou1 von
Informe tecnicou1Informe tecnicou1
Informe tecnicou1Aristo1
169 views18 Folien
Ejercicios de programacion concurrente von
Ejercicios de programacion concurrenteEjercicios de programacion concurrente
Ejercicios de programacion concurrenteedgar muñoz
3K views4 Folien
Informe tecnico de la unidad 1 von
Informe tecnico de la unidad 1Informe tecnico de la unidad 1
Informe tecnico de la unidad 1Eliu Osseas Puc Puc
383 views22 Folien
Estructuras iterativas1 von
Estructuras iterativas1Estructuras iterativas1
Estructuras iterativas1Kathy Granizo
9.7K views11 Folien
Problemas propuestos clase 0-1 von
Problemas propuestos  clase 0-1Problemas propuestos  clase 0-1
Problemas propuestos clase 0-1Jefferson Prieto
12.3K views13 Folien
7090112 Clase Transact Sql Server von
7090112 Clase Transact Sql Server7090112 Clase Transact Sql Server
7090112 Clase Transact Sql ServerCorfapo
543 views30 Folien

Was ist angesagt?(19)

Informe tecnicou1 von Aristo1
Informe tecnicou1Informe tecnicou1
Informe tecnicou1
Aristo1169 views
Ejercicios de programacion concurrente von edgar muñoz
Ejercicios de programacion concurrenteEjercicios de programacion concurrente
Ejercicios de programacion concurrente
edgar muñoz3K views
Estructuras iterativas1 von Kathy Granizo
Estructuras iterativas1Estructuras iterativas1
Estructuras iterativas1
Kathy Granizo9.7K views
7090112 Clase Transact Sql Server von Corfapo
7090112 Clase Transact Sql Server7090112 Clase Transact Sql Server
7090112 Clase Transact Sql Server
Corfapo543 views
Arreglo unidimensionales y bidimensionales von Marco Garay
Arreglo unidimensionales y bidimensionalesArreglo unidimensionales y bidimensionales
Arreglo unidimensionales y bidimensionales
Marco Garay1.9K views
Programa en java para calcular promedios von Carmen Nereira
Programa en java para calcular promediosPrograma en java para calcular promedios
Programa en java para calcular promedios
Carmen Nereira18.2K views
Estructuras iterativas en java y pseudocódigo von Alex Cordova
Estructuras iterativas en java y pseudocódigoEstructuras iterativas en java y pseudocódigo
Estructuras iterativas en java y pseudocódigo
Alex Cordova4.4K views
Ejercicios resueltos de programacion von Jaime amambal
Ejercicios resueltos de programacionEjercicios resueltos de programacion
Ejercicios resueltos de programacion
Jaime amambal1K views
Script de Punteros a Funciones von AnesGy SD
Script de Punteros a FuncionesScript de Punteros a Funciones
Script de Punteros a Funciones
AnesGy SD1.2K views
Bucles de Control Repetitivo Ciclos For von Richard Robalino
Bucles de Control Repetitivo  Ciclos ForBucles de Control Repetitivo  Ciclos For
Bucles de Control Repetitivo Ciclos For
Richard Robalino19.9K views
Problemas propuesto 1 al12 von YO Por Que
Problemas propuesto 1 al12Problemas propuesto 1 al12
Problemas propuesto 1 al12
YO Por Que650 views
Informe estructura de datos Unidad 1 von eliezerbs
Informe estructura de datos Unidad 1Informe estructura de datos Unidad 1
Informe estructura de datos Unidad 1
eliezerbs1.7K views
Estructuras iterativas y ejemplos propuestos von marigelcontreras
Estructuras iterativas y ejemplos propuestosEstructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestos
marigelcontreras17K views

Destacado

Datos previos von
Datos previosDatos previos
Datos previosLuiggi Inga Barboza
498 views10 Folien
Parte Principal von
Parte  Principal Parte  Principal
Parte Principal Luiggi Inga Barboza
113 views1 Folie
Logica de negocios von
Logica de negociosLogica de negocios
Logica de negociosLuiggi Inga Barboza
773 views23 Folien
Entidades von
EntidadesEntidades
EntidadesLuiggi Inga Barboza
97 views2 Folien
Entidades von
EntidadesEntidades
EntidadesLuiggi Inga Barboza
178 views3 Folien
Entidades von
EntidadesEntidades
EntidadesLuiggi Inga Barboza
102 views2 Folien

Similar a Presentacion

Resulset von
ResulsetResulset
ResulsetFiorella Aguilar Isuiza
54 views12 Folien
Metodosenjava 110504201809-phpapp02 von
Metodosenjava 110504201809-phpapp02Metodosenjava 110504201809-phpapp02
Metodosenjava 110504201809-phpapp02aleja09_40
201 views26 Folien
Resulteset von
ResultesetResulteset
ResultesetINGRID LESLY CORONEL ACUÑA
120 views18 Folien
sentenciareturnymetodos von
sentenciareturnymetodossentenciareturnymetodos
sentenciareturnymetodosLao Tobon
346 views9 Folien
Arreglos, Procedimientos y Funciones von
Arreglos, Procedimientos y FuncionesArreglos, Procedimientos y Funciones
Arreglos, Procedimientos y FuncionesCesar David Fernandez Grueso
24.8K views17 Folien
Ecuaciones Cuadraticas von
Ecuaciones CuadraticasEcuaciones Cuadraticas
Ecuaciones Cuadraticaseccutpl
7.3K views9 Folien

Similar a Presentacion(20)

Metodosenjava 110504201809-phpapp02 von aleja09_40
Metodosenjava 110504201809-phpapp02Metodosenjava 110504201809-phpapp02
Metodosenjava 110504201809-phpapp02
aleja09_40201 views
sentenciareturnymetodos von Lao Tobon
sentenciareturnymetodossentenciareturnymetodos
sentenciareturnymetodos
Lao Tobon346 views
Ecuaciones Cuadraticas von eccutpl
Ecuaciones CuadraticasEcuaciones Cuadraticas
Ecuaciones Cuadraticas
eccutpl7.3K views
UTPL-PROGRAMACIÓN AVANZADA-II-BIMESTRE-(OCTUBRE 2011-FEBRERO 2012) von Videoconferencias UTPL
UTPL-PROGRAMACIÓN AVANZADA-II-BIMESTRE-(OCTUBRE 2011-FEBRERO 2012)UTPL-PROGRAMACIÓN AVANZADA-II-BIMESTRE-(OCTUBRE 2011-FEBRERO 2012)
UTPL-PROGRAMACIÓN AVANZADA-II-BIMESTRE-(OCTUBRE 2011-FEBRERO 2012)
Java::Acceso a Bases de Datos von jubacalo
Java::Acceso a Bases de DatosJava::Acceso a Bases de Datos
Java::Acceso a Bases de Datos
jubacalo2.8K views
3 desarollo manejo datos capitulo 3 -01 arreglo objetos von luis freddy
3 desarollo manejo datos capitulo 3 -01 arreglo objetos3 desarollo manejo datos capitulo 3 -01 arreglo objetos
3 desarollo manejo datos capitulo 3 -01 arreglo objetos
luis freddy587 views
Workshop iOS 4: Closures, generics & operators von Visual Engineering
Workshop iOS 4: Closures, generics & operatorsWorkshop iOS 4: Closures, generics & operators
Workshop iOS 4: Closures, generics & operators
Visual Engineering507 views
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANS von William Diaz S
Tutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANSTutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANS
William Diaz S19.8K views

Presentacion

  • 1. PRESENTACION<br />En el Paquete Presentación se ha creado cuatro frames, de los cuales tres depende de un principal llamado frmPrincipal el cual llama a los demás instanciándolos como se observa aquí:<br />frmPrincipal:<br />Pare esto se ha creado un contenedor en el frmPrincipal en donde podremos tener a los demás frames para esto se ha creado:<br />public class frmPrincipal extends javax.swing.JFrame {<br /> public frmPrincipal() {<br /> initComponents();<br /> setExtendedState(javax.swing.JFrame.MAXIMIZED_BOTH);<br />}<br />En la parte superior de este frame se han creado 4 items de menú <br />Los otros frames se llaman así:<br />frmCursos ofrmCursos = new frmCursos();<br /> pnlPrincipal.add(ofrmCursos);<br /> ofrmCursos.setVisible(true);<br />A continuación se explicara el frame curso el cual el principal para registrar a cada curso. <br />Para esto se ha creado al igual que en FrmAlumnos y frmNotas su respectivo modelo <br />En estemodelo en realidad es una clase hija de AbstractTableModel {} que esta en implementada en java,esta clase es modificada para luego ser utilizada en presentacion en su respectiva tabla:<br />Los metodos que han sidomodificados son los siguientes:<br />getRowCount() {} devuelve el numero de filas<br />getColumnCount() {}devuelve el numero de columnas <br />getColumnName(int columnIndex) {} devuelve el numero de columnas<br />getValueAt(int rowIndex, int columnIndex) {}toma los valores que se encuentran en la tabla<br />isCellEditable(int rowIndex, int columnIndex) {}devuelve si puede ser o no editable<br />setValueAt(Object aValue, int rowIndex, int columnIndex) {}devuelve los valores de cada celda <br />if(aValue!= null) {<br />if(aValue.toString().isEmpty()) {<br /> datos.get(rowIndex).getNotas().get(columnIndex - 2).setValor(-1.0);<br /> }<br /> else {<br /> if(esnumero(aValue.toString())==true){<br /> datos.get(rowIndex).getNotas().get(columnIndex - 2).setValor (Double.parseDouble (aValue. toString( )));<br /> }<br /> Calculadora calculadora = new Calculadora();<br /> Double promedio = calculadora.Calcular(datos.get(rowIndex).getOCurso().getFormula(), datos.get(rowIndex).getNotas());<br /> datos.get(rowIndex).setPromedio(promedio);<br /> }<br /> fireTableCellUpdated(rowIndex, columnIndex);<br /> fireTableCellUpdated(rowIndex, datos.get(rowIndex).getNotas().size() + 2);<br /> }<br />Como podemos observar este es el metodo mas importante puesto q en el se ejecutara el promedio lamando a los metodos que se encuentran en la logica Negocios:”calculadora” y posteriormente promedio.<br />Como vemos primero se evalua si se encuentran llenas las cedas de de la tabla y luego pasamos estos valores a la clase calculadora donde se devolvera el resultado promedio de la formula ya extraida.<br />Auxiliarmente hemos creido convenientemente crear <br /> public boolean esnumero(String numero){<br /> numero= numero.toUpperCase();<br /> int con=0;<br /> for (int i = 0; i < numero.length(); i++) {<br /> if(numero.substring(i, i+1).equals(quot; .quot; )//||numero(numero.substring(i, i+1))==false<br /> ){<br /> con=con+1;<br /> }<br /> }<br /> if(con>1){<br /> return false;<br /> }else{<br /> return true;<br /> }<br /> }<br />Este metodo es utilizado con elfin dequeen la tabla solo seingrese dato s doubles y no alla algun error como elde ingresar dobles puntos.<br />Parapoder entendermejor el proyectopsare a explicar el uso del frame notas:<br />public frmNotas() {<br /> initComponents();<br /> this.setLocation(Toolkit.getDefaultToolkit().getScreenSize().width / 2 - this.getWidth() / 2,Toolkit.getDefaultToolkit().getScreenSize().height / 2 - this.getHeight() / 2 );<br /> PresentarCursos();<br /> }<br /> private void PresentarCursos() {<br /> GestionNotas gestionNotas = new GestionNotas();<br /> try {<br /> cboCurso.setModel(new DefaultComboBoxModel(gestionNotas.ConsultarCursos(quot; quot; , quot; quot; ).toArray()));<br /> }<br /> catch(Exception e) {<br /> System.out.println(quot; ERRORquot; );<br /> }<br /> }<br />En este metodo al tenerelcombo de alumnos se ha creado un combo por default seconsultan todos los cursos los cuales son agregadosen un array y a su vez sonpresentado en elframe medianteel combo con el metodo PresentarCursos() {}<br />Luego se llama al siguiente metodo;<br /> private void PresentarAlumnos() {<br /> GestionNotas gestionNotas = new GestionNotas();<br /> try {<br /> Curso curso = ((Curso)(cboCurso.getSelectedItem()));<br /> List<String> columnas = new ArrayList<String>();<br /> columnas.add(quot; Codigoquot; );<br /> columnas.add(quot; Nombrequot; );<br /> <br /> for(int i=0;i<curso.getTiposEvaluaciones().size();i++) {<br /> columnas.add(curso.getTiposEvaluaciones().get(i));<br /> }<br /> columnas.add(quot; Promedioquot; );<br /> tblNotas.setModel(new ModeloNotas(columnas , gestionNotas.ConsultarAlumnos(quot; quot; , quot; quot; ,(Curso)(cboCurso.getSelectedItem()))));<br /> //tblNotas.setModel(new ModeloNotas(columnas,gestionNotas.ConsultarAlumnos(quot; quot; , quot; quot; ,curso))));<br /> tblNotas.setDefaultRenderer(Object.class, new MiRender());<br /> <br /> }<br /> catch(Exception e) {<br /> System.out.println(quot; ERROR1111quot; );<br /> }<br /> }<br />Este metodo llama al modelo de alumnos y en este es presentado, a la vez se ha usado una clase por defauld de tabla:<br />public class MiRender extends DefaultTableCellRenderer {<br /> @Override<br />public Component getTableCellRendererComponent(JTable table,<br />Object value, boolean isSelected, boolean hasFocus, int row,<br />int column) {<br /> if(column>1){<br />Component cell = super.getTableCellRendererComponent(table, value,<br />isSelected, hasFocus, row, column);<br />//cell.setBackground(Color.BLUE);<br />if(value!=null){<br /> if(value.toString().compareTo(quot; 0quot; )>=0 && value.toString().compareTo(quot; 10.5quot; )<0<br /> )<br /> //Double.parseDouble(value.toString())>0&&Double.parseDouble(value.toString())<10.5)<br /> cell.setForeground(Color.red);<br /> else<br /> cell.setForeground(Color.blue);<br /> }<br /> return cell;<br /> }else{<br /> Component cell = super.getTableCellRendererComponent(table, value,<br />isSelected, hasFocus, row, column);<br />//cell.setBackground(Color.GREEN);<br />cell.setForeground(Color.BLACK);<br /> <br /> return cell;<br /> }<br />}<br /> }<br />En esta se le asigna colores a las notas si son 10 a 10.5 o 0 a 1 las muestra de color rojo.<br /> <br />