Código de `VistaArtistasBuscar`:
* *
Código:
public class VistaArtistasBuscar extends JFrame implements ActionListener{ /** * Componentes de la ventana */ private Coordinador miCoordinador; private JTextField campoTextoArtista, campoTextoArtista2; private JLabel etiquetaNombreArtista, etiquetaNombreArtista2, etiquetaNombreAlbumes; private JButton botonBuscar, botonEliminar, botonModificar, botonSeleccionar; private JList listadoAlbumes; private DefaultListModel modeloLista; private JSeparator separador; private JScrollPane scrollListadoAlbumes; private Generador miGenerador; /** * Iniciamos la ventana. */ public VistaArtistasBuscar() { iniciarVentana(); } /** * Contenido de la ventana */ private void iniciarVentana() { /*Propiedades Frame*/ setTitle("Artistas: Buscar"); setBounds(200, 100, 450, 337); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); getContentPane().setLayout(null); setLocationRelativeTo(null); setResizable(false); /*Etiqueta nombre Artista I*/ etiquetaNombreArtista = new JLabel("Nombre:"); etiquetaNombreArtista.setFont(new Font("Tahoma", Font.PLAIN, 14)); etiquetaNombreArtista.setBounds(10, 6, 68, 22); /*Campo texto Artista I*/ campoTextoArtista = new JTextField(); campoTextoArtista.setBounds(78, 6, 259, 22); campoTextoArtista.setColumns(10); /*Boton Buscar*/ botonBuscar = new JButton("Buscar"); botonBuscar.setBounds(347, 6, 77, 23); botonBuscar.addActionListener(this); getContentPane().setLayout(null); getContentPane().add(etiquetaNombreArtista); getContentPane().add(campoTextoArtista); getContentPane().add(botonBuscar); /*Etiqueta nombre Artista II*/ etiquetaNombreArtista2 = new JLabel("Nombre:"); etiquetaNombreArtista2.setFont(new Font("Tahoma", Font.PLAIN, 14)); etiquetaNombreArtista2.setBounds(10, 56, 68, 14); getContentPane().add(etiquetaNombreArtista2); /*Campo texto Artista II*/ campoTextoArtista2 = new JTextField(); campoTextoArtista2.setBounds(82, 55, 241, 20); getContentPane().add(campoTextoArtista2); campoTextoArtista2.setColumns(10); /*Boton Eliminar*/ botonEliminar = new JButton("Eliminar"); botonEliminar.setBounds(234, 92, 89, 23); botonEliminar.addActionListener(this); getContentPane().add(botonEliminar); /*Boton Modificar*/ botonModificar = new JButton("Modificar"); botonModificar.setBounds(135, 92, 89, 23); botonModificar.addActionListener(this); getContentPane().add(botonModificar); /*Etiqueta Albumes*/ etiquetaNombreAlbumes = new JLabel("Albumes:"); etiquetaNombreAlbumes.setFont(new Font("Tahoma", Font.PLAIN, 14)); etiquetaNombreAlbumes.setBounds(10, 134, 89, 14); getContentPane().add(etiquetaNombreAlbumes); /*Boton Seleccionar*/ botonSeleccionar = new JButton("Seleccionar"); botonSeleccionar.setBounds(335, 265, 89, 23); botonSeleccionar.addActionListener(this); getContentPane().add(botonSeleccionar); /*Separador*/ separador = new JSeparator(); separador.setBounds(0, 39, 434, 2); getContentPane().add(separador); /*Scroll para el listado de los Artistas*/ scrollListadoAlbumes = new JScrollPane(); listadoAlbumes = new JList(); modeloLista=new DefaultListModel(); scrollListadoAlbumes.setBounds(10, 154, 306, 135); getContentPane().add(scrollListadoAlbumes); scrollListadoAlbumes.setViewportView(listadoAlbumes); } /** * Relacionamos esta clase con el Coordinador */ public void setCoordinador(Coordinador miCoordinador){ this.miCoordinador=miCoordinador; } /** * Clase que maneja todos los eventos que ocurren en la ventana */ @Override public void actionPerformed(ActionEvent evento) { if(evento.getSource()==botonBuscar){ try{ ArtistaDAO artistaDAO=new ArtistaDAO(); ArtistaVO artistaVO=new ArtistaVO(); miGenerador=new Generador(); artistaVO.setNombreArtista(campoTextoArtista.getText()); artistaDAO.buscarArtista(artistaVO); if(artistaDAO.buscarArtista(artistaVO)!=null){ mostrarArtista(artistaVO); miGenerador.llenarListaAlbumes(artistaVO, modeloLista, listadoAlbumes, artistaDAO); }else{ JOptionPane.showMessageDialog(null, "El artista no existe", "Error", JOptionPane.ERROR_MESSAGE); } }catch(Exception excepcion){ excepcion.printStackTrace(); } } if(evento.getSource()==botonModificar){ try{ ArtistaVO artistaVO=new ArtistaVO(); ArtistaDAO artistaDAO=new ArtistaDAO(); String nuevoNombre=campoTextoArtista2.getText(); artistaVO.setNombreArtista(campoTextoArtista.getText()); artistaDAO.modificarArtista(artistaVO, nuevoNombre); }catch(Exception excepcion){ excepcion.printStackTrace(); } } if(evento.getSource()==botonEliminar){ if(!campoTextoArtista2.getText().equals("")){ int respuesta=JOptionPane.showConfirmDialog(this, "¿Estás seguro que deseas eliminar el Artista?", "Confirmacion", JOptionPane.YES_NO_OPTION); if(respuesta==JOptionPane.YES_OPTION){ ArtistaDAO artistaDAO=new ArtistaDAO(); ArtistaVO artistaVO=new ArtistaVO(); AlbumVO albumVO=new AlbumVO(); albumVO.setNombreAlbum(listadoAlbumes.getSelectedValue().toString()); artistaVO.setNombreArtista(campoTextoArtista2.getText()); artistaDAO.eliminarArtista(artistaVO, artistaDAO, albumVO); limpiar(); modeloLista.removeAllElements(); } } } if(listadoAlbumes.getSelectedIndex()>=0&&evento.getSource()==botonSeleccionar){ VistaAlbumesBuscar ventanaAlbumBuscar=new VistaAlbumesBuscar(); ventanaAlbumBuscar.setVisible(true); ventanaAlbumBuscar.abrirVentana(campoTextoArtista2, modeloLista, listadoAlbumes); }else if(evento.getSource()==botonSeleccionar){ JOptionPane.showMessageDialog(null, "Debes elegir un Album de la lista","Información",JOptionPane.INFORMATION_MESSAGE); } } /** * Establecemos el contenido del Campo texto tras la búsqueda */ private void mostrarArtista(ArtistaVO artistaVO){ campoTextoArtista2.setText(artistaVO.getNombreArtista()); } private void limpiar(){ campoTextoArtista.setText(""); campoTextoArtista2.setText(""); } * *}