pabloar93

ViajePanel // TP1 Java UTN 2013

Sep 12th, 2013
43
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.41 KB | None | 0 0
  1. package tp1.ui.desktop;
  2.  
  3. import javax.swing.*;
  4.  
  5. import tp1.controlador.Controlador;
  6. import tp1.datos.Datos;
  7.  
  8. import java.awt.*;
  9. import java.awt.event.*;
  10.  
  11. public class ViajePanel extends JPanel {
  12.     JLabel lblOrigen, lblDestino, lblTren, lblVagon, lblDNI, lblTarjeta;
  13.     JComboBox cbOrigen, cbDestino, cbTren, cbVagon;
  14.     JTextField txtDNI, txtTarjeta, txtCantNum;
  15.     JButton btnAceptar,btnCancelar;
  16.    
  17.     public ViajePanel() {
  18.         setLayout(new FlowLayout());
  19.        
  20.         txtCantNum = new JTextField(2);
  21.         txtCantNum.setEditable(false);
  22.         lblDNI = new JLabel("DNI: ");
  23.         lblTarjeta = new JLabel("Nro. Tarjeta: ");
  24.         lblOrigen = new JLabel("Origen");
  25.         lblDestino = new JLabel("Destino");
  26.         lblTren = new JLabel("Tren: ");
  27.         lblVagon = new JLabel("Tipo Vagon: ");
  28.         cbOrigen = new JComboBox();
  29.         cbDestino = new JComboBox();
  30.         cbTren = new JComboBox();
  31.         cbVagon = new JComboBox();
  32.         txtDNI = new JTextField(8);
  33.         txtTarjeta = new JTextField(20);
  34.         txtTarjeta.addKeyListener(new KPTarjeta());
  35.        
  36.         cbTren = cargarCombo(Datos.getInstancia().getTrenes());
  37.         cbOrigen = cargarCombo(Datos.getInstancia().getLocalidades());
  38.         cbDestino = cargarCombo(Datos.getInstancia().getLocalidades());
  39.         cbVagon = cargarCombo(Datos.getInstancia().getVagones());
  40.        
  41.         JPanel pnlPasajero = new JPanel();
  42.         pnlPasajero.setLayout(new FlowLayout());
  43.         pnlPasajero.setBorder(BorderFactory.createTitledBorder("Datos Pasajero"));
  44.         pnlPasajero.add(lblDNI);
  45.         pnlPasajero.add(txtDNI);
  46.         pnlPasajero.add(lblTarjeta);
  47.         pnlPasajero.add(txtTarjeta);
  48.         pnlPasajero.add(txtCantNum);
  49.        
  50.         JPanel pnlDestinos = new JPanel();
  51.         pnlDestinos.setLayout(new FlowLayout());
  52.         pnlDestinos.add(lblOrigen);
  53.         pnlDestinos.add(cbOrigen);
  54.         pnlDestinos.add(lblDestino);
  55.         pnlDestinos.add(cbDestino);
  56.        
  57.         JPanel pnlTrenes = new JPanel();
  58.         pnlTrenes.setLayout(new FlowLayout());
  59.         pnlTrenes.add(lblTren);
  60.         pnlTrenes.add(cbTren);
  61.         pnlTrenes.add(lblVagon);
  62.         pnlTrenes.add(cbVagon);
  63.        
  64.         btnAceptar = new JButton("Aceptar");
  65.         btnAceptar.addActionListener(new BtnAceptar_Click());
  66.         btnCancelar = new JButton("Cancelar");
  67.                
  68.         JPanel pnlBotones = new JPanel();
  69.         pnlBotones.setLayout(new FlowLayout());
  70.         pnlBotones.add(btnAceptar);
  71.         pnlBotones.add(btnCancelar);
  72.        
  73.         this.add(pnlPasajero);
  74.         this.add(pnlDestinos);
  75.         this.add(pnlTrenes);
  76.         this.add(pnlBotones);      
  77.     }
  78.    
  79.     public JComboBox cargarCombo(Object[] ar) {
  80.         JComboBox jcb = new JComboBox();
  81.         for(int i=0;i<ar.length;i++) {
  82.             jcb.addItem(ar[i].toString());
  83.         }
  84.         return jcb;
  85.     }
  86.    
  87.     public boolean validarDatos() {
  88.         if(!(txtTarjeta.getText().trim().length()==16 && txtTarjeta.getText().matches("[1-9][0-9]*")))
  89.             return false;
  90.         if(!(txtDNI.getText().matches("[1-9][0-9]*")))
  91.             return false;
  92.         return true;
  93.     }
  94.    
  95.     public boolean validarLocalidades() {
  96.         if((cbOrigen.getSelectedItem().toString().equals(cbDestino.getSelectedItem().toString())))
  97.             return false;
  98.         return true;
  99.     }
  100.    
  101.     public void vaciarCampos() {
  102.         txtDNI.setText("");
  103.         txtTarjeta.setText("");
  104.         cbTren.setSelectedIndex(0);
  105.         cbVagon.setSelectedIndex(0);
  106.         cbOrigen.setSelectedIndex(0);
  107.         cbDestino.setSelectedIndex(0);
  108.     }
  109.    
  110.     private class BtnAceptar_Click implements ActionListener {
  111.         public void actionPerformed(ActionEvent ev) {
  112.             String or,des,tr,tv,doc,tarj;
  113.             or = cbOrigen.getSelectedItem().toString();
  114.             des = cbDestino.getSelectedItem().toString();
  115.             tr = cbTren.getSelectedItem().toString();
  116.             tv = cbVagon.getSelectedItem().toString();
  117.            
  118.             doc = txtDNI.getText();
  119.             tarj = txtTarjeta.getText();
  120.             if(validarDatos() && validarLocalidades()) {
  121.                 Controlador.nuevoBoleto(or, des, tr, tv, doc, tarj);
  122.                 JOptionPane.showMessageDialog(null, "Boleto cargado");
  123.                 vaciarCampos();
  124.             }
  125.             else {
  126.                 if(!(validarDatos()))
  127.                     JOptionPane.showMessageDialog(null, "DNI y/o Nro de tarjeta invalidos");
  128.                 if(!(validarLocalidades()))
  129.                     JOptionPane.showMessageDialog(null, "Localidades son las mismas");
  130.             }
  131.         }
  132.     }
  133.     /*
  134.     private class BtnCancelar_Click implements ActionListener{
  135.         public void actionPerformed(ActionEvent ev) {
  136.             setVisible(false);
  137.         }
  138.     }
  139.     */
  140.     private class KPTarjeta implements KeyListener {
  141.         public void keyPressed(KeyEvent arg0) {
  142.        
  143.         }
  144.         public void keyReleased(KeyEvent arg0) {
  145.             int nro = txtTarjeta.getText().trim().length();
  146.             txtCantNum.setText((nro)+"");              
  147.         }
  148.         public void keyTyped(KeyEvent arg0) {
  149.             // TODO Auto-generated method stub 
  150.         }
  151.     }
  152. }
Advertisement
Add Comment
Please, Sign In to add comment