feat(examen 9-5-25): terminado

This commit is contained in:
Rafa Muñoz
2025-06-12 14:59:03 +02:00
parent 3e859f9db9
commit 8d3b26bf60
4 changed files with 240 additions and 3 deletions

View File

@@ -0,0 +1,130 @@
package tutorialJava.examenes.examen20250509.vista;
import javax.swing.JPanel;
import java.awt.GridBagLayout;
import javax.swing.JScrollPane;
import java.awt.GridBagConstraints;
import javax.swing.JLabel;
import java.awt.Insets;
import java.awt.Font;
import javax.swing.JButton;
import javax.swing.JTable;
import tutorialJava.examenes.examen20250509.controlador.ControladorConcierto;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class PanelEstadisticas extends JPanel {
private static final long serialVersionUID = 1L;
private JTable jTableDatos;
private JLabel lblPrecioMedio;
JLabel lblGrupoConMasConciertos;
/**
* Create the panel.
*/
public PanelEstadisticas() {
GridBagLayout gridBagLayout = new GridBagLayout();
gridBagLayout.columnWidths = new int[]{0, 0, 0};
gridBagLayout.rowHeights = new int[]{0, 0, 0, 0, 0};
gridBagLayout.columnWeights = new double[]{1.0, 0.0, Double.MIN_VALUE};
gridBagLayout.rowWeights = new double[]{0.0, 1.0, 0.0, 0.0, Double.MIN_VALUE};
setLayout(gridBagLayout);
JLabel lblNewLabel = new JLabel("Estadísticas");
lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 15));
GridBagConstraints gbc_lblNewLabel = new GridBagConstraints();
gbc_lblNewLabel.gridwidth = 2;
gbc_lblNewLabel.insets = new Insets(0, 0, 5, 5);
gbc_lblNewLabel.gridx = 0;
gbc_lblNewLabel.gridy = 0;
add(lblNewLabel, gbc_lblNewLabel);
JScrollPane scrollPane = new JScrollPane();
GridBagConstraints gbc_scrollPane = new GridBagConstraints();
gbc_scrollPane.gridwidth = 2;
gbc_scrollPane.insets = new Insets(0, 0, 5, 5);
gbc_scrollPane.fill = GridBagConstraints.BOTH;
gbc_scrollPane.gridx = 0;
gbc_scrollPane.gridy = 1;
add(scrollPane, gbc_scrollPane);
jTableDatos = new JTable(getMatrizDeDatos(), getTitulosMatriz());
scrollPane.setViewportView(jTableDatos);
JButton btnNewButton_1 = new JButton("Calcular precio medio");
btnNewButton_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
lblPrecioMedio.setText("" +
ControladorConcierto.getPrecioMedioConciertos());
}
});
GridBagConstraints gbc_btnNewButton_1 = new GridBagConstraints();
gbc_btnNewButton_1.insets = new Insets(0, 0, 5, 5);
gbc_btnNewButton_1.gridx = 0;
gbc_btnNewButton_1.gridy = 2;
add(btnNewButton_1, gbc_btnNewButton_1);
lblPrecioMedio = new JLabel("New label");
GridBagConstraints gbc_lblPrecioMedio = new GridBagConstraints();
gbc_lblPrecioMedio.insets = new Insets(0, 0, 5, 0);
gbc_lblPrecioMedio.gridx = 1;
gbc_lblPrecioMedio.gridy = 2;
add(lblPrecioMedio, gbc_lblPrecioMedio);
JButton btnNewButton = new JButton("Grupo con más conciertos");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
lblGrupoConMasConciertos.setText(
ControladorConcierto.getGrupoConMasConciertos());
}
});
GridBagConstraints gbc_btnNewButton = new GridBagConstraints();
gbc_btnNewButton.insets = new Insets(0, 0, 0, 5);
gbc_btnNewButton.gridx = 0;
gbc_btnNewButton.gridy = 3;
add(btnNewButton, gbc_btnNewButton);
lblGrupoConMasConciertos = new JLabel("New label");
GridBagConstraints gbc_lblGrupoConMasConciertos = new GridBagConstraints();
gbc_lblGrupoConMasConciertos.gridx = 1;
gbc_lblGrupoConMasConciertos.gridy = 3;
add(lblGrupoConMasConciertos, gbc_lblGrupoConMasConciertos);
}
/**
*
* @return
*/
private Object[][] getMatrizDeDatos() {
// String matriz[][] = new String[2][2];
// matriz[0][0] = "Rafa";
// matriz[0][1] = "Ismael";
// matriz[1][0] = "Rubén";
// matriz[1][1] = "Mª Jesús";
return ControladorConcierto.getTotalesFestivalesPorCiudad();
}
/**
*
* @return
*/
private String[] getTitulosMatriz() {
return new String[] {"Ciudad", "Número de festivales"};
}
}