Practica6EJ2011

Embed Size (px)

Citation preview

  • 8/4/2019 Practica6EJ2011

    1/10

    INSTITUTO TECNOLGICO DE VERACRUZTPICOS SELECTOS DE PROGRAMACIN

    Prctica4: Programacin Visual en NetbeansProfesor: Hctor Andrade Gmez

    En sta prctica vamos a crear una interfase grfica para calcular el sueldo de una personautilizando la ayuda para programacin visual de NetBeans. en la primera parte crearemos los

    componentes y los distribuiremos en el rea de trabajo. En la segunda parte agregaremos elcdigo para realizar el clculo.

    Abre Netbeans y selecciona File->New Project->General->Java Application. Deber

    aparecer una pantalla como esta:

    Oprime Next. Vamos a crear una aplicacin con una interfase grfica que calcule e

    imprima el sueldo de un trabajador a partir de las horas trabajadas. Al terminar laprctica, el programa resultante deber producir una pantalla similar a esta:

  • 8/4/2019 Practica6EJ2011

    2/10

  • 8/4/2019 Practica6EJ2011

    3/10

    Para ver el cdigo creado por NetBeans, selecciona Source. Puedes en todo momento

    ver el cdigo o regresar al diseo de la forma oprimiendo Design

    Con el editor de formas, pueder agregar y editar componentes utilizando cualquiera de

    las tres areas de trabajo:

    Palette Contiene los componentes y Layout managers

    Inspector Despliega la estructura jerrquica de los componeentes

    Properties Despliega las propiedades del componente seleccionado.

    Hasta ahora, has creado un proyecto y un JFrame llamado SamplesFrame. Ahora vamos

    a agregar componentes. Dale Click al componente JTabbedPane que se encuentra en

    Palette, y colcalo en el area blanca de tu diseo. Ahora, has click en JPanel y colcalo

    adentro del JTabbedPane. Esto ha agregado un JPanel al JTabbedPane, agrega otro

    JPanel procurando colocarlo en la parte superior de tal forma que se agrege al mismo

    nivel del JPanel anterior. Debes tener algo similar a esto:

  • 8/4/2019 Practica6EJ2011

    4/10

    Puedes observar las propiedades de cada objeto seleccionndolo en la ventana del

    Inspector

    Vamos a cambiar el texto de cada pestaa. Selecciona cada uno de los JPane y en el area

    de propiedades cambia el ttulo (Tab Title). Cambia el ttulo de la pestaa 1 por

    Calculadora y el de la dos por Imagen

    Ahora, vamos a establecer como van a ser desplegados los componentes. En la ventanade Inspector dale click derecho al JFrame, y selecciona Set Layout-> GridBagLayout.

    Vamos a agregar mas componentes al JPanel1. Seleccinalo (al JPanel1) en la ventana

    del inspector y vamos agregar 8 etiquetas (JLabel) dos Campos de Texto (JTextField) y

    un botn (JButton)

    Tu ventana del Inspector y del diseo debe ser algo parecido a esto:

    Ahora vamos a cambiar los ttulos de los componentes. En el caso de las etiquetas 6,7 y

    8 no pondremos ttulos pues las usaremos para desplegar los clculos. Al final debe

    quedar algo asi:

  • 8/4/2019 Practica6EJ2011

    5/10

  • 8/4/2019 Practica6EJ2011

    6/10

    PRACTICA SOBRE NETBEANS

    Segunda parte

    En esta parte de la prctica vamos a trabajar con la parte dinmica de la interfase grfica

    de la calculadora. Empezaremos con el diseo que hicimos en la primera parte de la

    prctica:

    Hasta ahora, esta aplicacin no tiene funcionalidad. Agregaremos un manejador de

    eventos para el botn, pero primero crearemos un men para esta aplicacin.

    Aunque frecuentemente los menus son de los primeros objetos creados en una

    aplicacin, lo haremos de otra forma para demostrar lo fcil que resulta modificar el

    diseo de la aplicacin creando componentes en cualquier orden. En la ventana del

    Inspector puedes seleccionar el objeto que desees y modificar, agregar o borrar

    componentes.

    Regresemos a la pantalla de diseo, en la ventana del Inspector, selecciona el JFrame.

    Nota que en la ventana de propiedades puedes cambiar cualquiera de ellas.

    Ahora, en la ventana del Inspector, oprime el botn derecho sobre el componente

    JFrame, selecciona Add From Palette y selecciona: swing->JMenuBar. Cuando veas

    que el objeto ha sido creado en la ventana del Inspector, observa que tambien se ha

    creado el objeto JMenu1. Posteriormente oprime el botn derecho en JMenu1 yrenmbralo (change variable name) como Archivo. Tambin cambia el texto que

    aparece en el diseo por Archivo (edit text). Tu pantalla debe ser similar a esta:

  • 8/4/2019 Practica6EJ2011

    7/10

  • 8/4/2019 Practica6EJ2011

    8/10

    De esta forma puedes agregar ms menus y mas opciones por cada men.

    El ltimo componente que debemos agregar es una imagen de la persona. Una manera

    de mostrar imgenes en Java Swing es decorando componentes como etiquetas,

    botones, etc., con un cono. Un cono es una figura de tamao fijo.

    Vamos a poner una imagen en la pestaa de Imgenes. En la ventana del inspector,selecciona con doble-click a JPanel2.

    Ahora, selecciona el layout to BorderLayout (Click derecho en JPanel2-> setLayout -

    >BorderLayout). En la paleta de componentes, selecciona JLabel y coloca la etiqueta

    adentro del Panel. En la paleta de propiedades, cambia el icono por una imagen.

    Colcala en el centro del panel seleccionando las propiedades horizontalAlignment y

    verticalAlignment. Tu pantalla debera verse parecida a esta:

    Finalmente, vamos a agregar el cdigo para que al oprimir un botn, se calcule el pago

    del trabajador. Selecciona en la pantalla de diseo o en la ventana del Inspector el botnCalcula. Dale click derecho, y selecciona Events->Action->ActionPerformed:

  • 8/4/2019 Practica6EJ2011

    9/10

    Aparecer el cdigo del mtodo que maneja el botn. Agrega el siguiente cdigo en el

    mtodo jButton1ActionPerformed:

    //Lee las horas trabajadas del campo de texto y lo convierte a int

    int hw = Integer.parseInt(jTextField1.getText());// Lee el salario por hora y lo converte a int

    double rateEntered =

    Double.parseDouble(jTextField2.getText());

    //Crea dos variables de tipo Double.

    double regularPay = 0;

    double overTimePay = 0;

    //Si trabaj mas de 40 horas se le paga 150%

    if (hw > 40) {

    regularPay = 40 * rateEntered;

    overTimePay = (hw - 40) * 1.5 * rateEntered;

    } else {

    regularPay = hw * rateEntered;

    overTimePay = 0.0;}

    double total = regularPay + overTimePay;

    //Variables para formateo de numeros

    NumberFormat nfRegular =

    NumberFormat.getCurrencyInstance(Locale.US);

    NumberFormat nfOverTime =

    NumberFormat.getCurrencyInstance(Locale.US);

    NumberFormat nfTotal =

    NumberFormat.getCurrencyInstance(Locale.US);

    //Writes the totals in the correct format to the labels

  • 8/4/2019 Practica6EJ2011

    10/10

    jLabel6.setText(" " + nfRegular.format(regularPay));

    jLabel7.setText(" " + nfOverTime.format(overTimePay));

    jLabel8.setText(" " + nfTotal.format(total));

    Probablemente tengas que importar algunos paquetas. Agrega el cdigo al principio:

    import java.text.NumberFormat;

    import java.util.Locale;

    Nota: Si tienes diferentes nombres para los campos de texto y etiquetas modifica el

    cdigo anterior.

    Ahora corre el archivo. Deberas tener una pantalla como esta:

    Suerte!!