Clase de java principiante

hola buenas tardes,

soy nuevo en esto y no tengo muchas idea, tengo que hacer un programita en java de recpecion de vehículos, para añadir eliminar y borrar.

Lo primero que he echo es crearme una clase ventana que es la siguiente:

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class Ventana extends JFrame {
private JTextField textfield1,textfield2,textfield3;
private JLabel label0,label1,label2,label3,label4;
private JButton boton1,boton2,boton3,boton4,boton6,boton5,boton7;
private JScrollPane scrollpane1;
private JTextArea textarea1;
public Ventana() {
setLayout(null);
label0=new JLabel("Crear Lista:");
label0.setBounds(10,0,300,30);
add(label0);
label3=new JLabel("Introduzca coche:");
label3.setBounds(150,0,300,30);
add(label3);
label1=new JLabel("Matricula:");
label1.setBounds(160,30,300,30);
add(label1);
textfield1=new JTextField();
textfield1.setBounds(160,60,80,20);
add(textfield1);
label2=new JLabel("Color:");
label2.setBounds(160,80,80,20);
add(label2);
textfield2=new JTextField();
textfield2.setBounds(160,100,80,20);
add(textfield2);
label4=new JLabel("Marca:");
label4.setBounds(160,120,80,20);
add(label4);
textfield3=new JTextField();
textfield3.setBounds(160,140,80,20);
add(textfield3);
textarea1=new JTextArea();
scrollpane1=new JScrollPane(textarea1);
scrollpane1.setBounds(300,20,270,230);
add(scrollpane1);
boton1=new JButton("Crear Lista");
boton1.setBounds(05,30,140,50);
add(boton1);
boton2=new JButton("Eliminar Primero");
boton2.setBounds(05,85,140,50);
add(boton2);
boton3=new JButton("Eliminar Ultimo");
boton3.setBounds(05,140,140,50);
add(boton3);
boton4=new JButton("Ver Lista");
boton4.setBounds(05,195,140,50);
add(boton4);
boton5=new JButton("Añadir primero");
boton5.setBounds(145,170,140,30);
add(boton5);
boton7=new JButton("Añadir Ultimo");
boton7.setBounds(145,210,140,30);
add(boton7);
boton6=new JButton("Finalizar");
boton6.setBounds(450,275,100,30);
add(boton6);
boton2.addActionListener(this);
}
}

y bien esta no me da ningún error me he creado una clase oyente que es la siguente:

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Oyente implements ActionListener {
Ventana v;
public Oyente(Ventana v){
this.v=v;
v.boton6().addActionListener(this);//error
v.boton6().setActionCommand("Finalizar");//error
}
public void actionPerformed(ActionEvent e) {
if (e.getSource()==boton6) {//error
System.exit(0);
}
}
}

Lo ultimo me creado una clase para poder ejecutarla:

public class Ejercicio3 {
public static void main(String [] args){
Ventana formulario=new Ventana();
formulario.setBounds(0,30,600,350);
formulario.setVisible(true);
Oyente o=new Oyente(v);//error
}
}

no se lo que he echo mal ...

Otra cosa en el botón crear quisiera que cuando le de valla la información en el textarea

¿Como lo hago? Muchas gracias de antemano

Un saludo juan manuel

1 respuesta

Respuesta
-1

Así en caliente, veo 2 errores. El primero, en el main llamas a la ventana que creas como formulario pero al crear el oyente le pasas como ventana una supuesta ventana v que no creas en ningún sitio, por lo tanto, creo que deberías hacer new oyente(formulario).

El segundo esta en el evento actionPerformed, que referencias el objeto boton6 sin cualificador de clase, por lo tanto, el compilador asume que es de oyente y no de ventana, por lo tanto, debería decir e.getSource() == v.boton6.

De todas formas, estaría bien que cuando pidieses consejo por un error, pusieses el mensaje de error lo mas exacto posible para hacerme una mejor idea de lo que esta pasando.

Estaría bien que fueses mas descriptivo con los nombres de variables y controles para facilitarte la tarea de mantener tu aplicación en el futuro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas