Funcionalidad de selección de asiento completa
This commit is contained in:
parent
078256ac1b
commit
12b85df405
|
@ -1,7 +1,9 @@
|
|||
import javax.swing.event.ChangeEvent;
|
||||
import javax.swing.event.ChangeListener;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
|
||||
public class GestiónBotónSeleccionarAsiento implements ChangeListener {
|
||||
public class GestiónBotónSeleccionarAsiento implements ActionListener {
|
||||
private Asiento asiento;
|
||||
private SeleccionarAsientoV ventana;
|
||||
public GestiónBotónSeleccionarAsiento(Asiento parAsiento, SeleccionarAsientoV parVentana) {
|
||||
|
@ -10,7 +12,7 @@ public class GestiónBotónSeleccionarAsiento implements ChangeListener {
|
|||
}
|
||||
|
||||
@Override
|
||||
public void stateChanged(ChangeEvent e) {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
System.out.println("i:" + asiento.getX() + " j:" + asiento.getY());
|
||||
ventana.seleccionarAsientos(asiento);
|
||||
}
|
||||
|
|
|
@ -1,8 +1,11 @@
|
|||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class SeleccionarAsientoV extends JPanel {
|
||||
|
||||
JPanel panel;
|
||||
private JPanel pSuperior = new JPanel(new FlowLayout(FlowLayout.LEFT));
|
||||
private JButton bRegresar = new JButton("Regresar.");
|
||||
private int noAsientosSeleccionados = 0;
|
||||
|
@ -19,13 +22,15 @@ public class SeleccionarAsientoV extends JPanel {
|
|||
|
||||
private Asiento [][] asientos;
|
||||
|
||||
|
||||
List<Asiento> asientosSeleccionados = new ArrayList<Asiento>();
|
||||
public SeleccionarAsientoV(Asiento [][] parAsientos) throws HeadlessException {
|
||||
this.setLayout(new BorderLayout());
|
||||
|
||||
asientos = parAsientos;
|
||||
|
||||
agregarComponentes();
|
||||
añadirListeners();
|
||||
|
||||
crearCeldas(7,10);
|
||||
}
|
||||
|
||||
|
@ -73,7 +78,7 @@ public class SeleccionarAsientoV extends JPanel {
|
|||
}
|
||||
tfAux.setSize(100,100);
|
||||
//tfAux.addKeyListener(new GestiónTecladoEscribirCaracter(this,i,j));
|
||||
tfAux.addChangeListener(new GestiónBotónSeleccionarAsiento(new Asiento(i,j,zona,asientos[i][j].isDisponibilidad()),this));
|
||||
tfAux.addActionListener(new GestiónBotónSeleccionarAsiento(new Asiento(i,j,zona,asientos[i][j].isDisponibilidad()),this));
|
||||
con.gridx = j;
|
||||
con.gridy = i;
|
||||
con.gridheight = 1;
|
||||
|
@ -88,6 +93,10 @@ public class SeleccionarAsientoV extends JPanel {
|
|||
this.add(pSala,BorderLayout.CENTER);
|
||||
}
|
||||
|
||||
public void añadirListeners(){
|
||||
//bRegresar.addActionListener(new GestiónBotónCambiarVentana(this,new ventana2().panelV2));
|
||||
}
|
||||
|
||||
public void seleccionarAsientos(Asiento asiento){
|
||||
int precio = 0;
|
||||
|
||||
|
@ -112,14 +121,28 @@ public class SeleccionarAsientoV extends JPanel {
|
|||
if (bAsientos[x][y].isSelected()) {
|
||||
noAsientosSeleccionados++;
|
||||
total += precio;
|
||||
asientosSeleccionados.add(asiento);
|
||||
} else {
|
||||
noAsientosSeleccionados--;
|
||||
total -= precio;
|
||||
|
||||
for(int a = 0; a < asientosSeleccionados.size() ;a++){
|
||||
if(asientosSeleccionados.get(a).equals(asiento)){
|
||||
asientosSeleccionados.remove(a);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}else{
|
||||
bAsientos[x][y].setSelected(false);
|
||||
}
|
||||
|
||||
System.out.print("[");
|
||||
for(int a = 0; a < asientosSeleccionados.size() ;a++){
|
||||
System.out.print(asientosSeleccionados.get(a).getX() + " " + asientosSeleccionados.get(a).getY() + ", " );
|
||||
}
|
||||
System.out.println("]");
|
||||
|
||||
lSeleccionar.setText("Asientos seleccionados: " + noAsientosSeleccionados);
|
||||
lTotal.setText("Total: " + total + "$");
|
||||
}
|
||||
|
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue