Então, tenho esse pequeno exercício que a classe ControllerCarro funciona quando implementada na mesma classe JanelaCarro, mas quando mudo de pacote não consigo faze-la funcionar. Não sei se estou referenciando errado e já tentei muitas coisas. Se alguém souber como ajudar...
package principal;
import java.awt.FlowLayout;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class JanelaCarro extends JFrame {
public JLabel JLmarca;
public JLabel JLmodelo;
public JLabel JLTipoCombustivel;
public JLabel JLpreco;
public JLabel JLcilindros;
public JLabel JLpassageiros;
public JLabel JLpotencia;
public JLabel JLpercentual;
public JLabel JLnumeroRodas;
public JTextField JTmarca;
public JTextField JTpotencia;
public JTextField JTpassageiros;
public JTextField JTmodelo;
public JTextField JTcilindros;
public JTextField JTnumeroRodas;
public JTextField JTTipoCombustivel;
public JTextField JTpercentual;
public JTextField JTpreco;
public JButton JBsalvar, JBlimpar;
public JanelaCarro(){
setTitle("Cadastro de Carros");
JBsalvar = new JButton("Salvar");
JBlimpar = new JButton("Limpar");
setLayout(new FlowLayout());
setSize(600,180);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
JLmarca = new JLabel("Marca: ");
JTmarca = new JTextField(10);
JLmodelo = new JLabel("Modelo: ");
JTmodelo = new JTextField(15);
JLcilindros = new JLabel("Cilindros: ");
JTcilindros = new JTextField(8);
JLpotencia = new JLabel("Potência: ");
JTpotencia = new JTextField(8);
JLnumeroRodas = new JLabel("Número de rodas: ");
JTnumeroRodas = new JTextField(8);
JLpreco = new JLabel("Preço: ");
JTpreco = new JTextField(10);
JLpassageiros = new JLabel("Passageiros: ");
JTpassageiros = new JTextField(5);
JLTipoCombustivel = new JLabel("Tipo de Combustível: ");
JTTipoCombustivel = new JTextField(10);
JLpercentual = new JLabel("Percentual: ");
JTpercentual = new JTextField(5);
add(JLmarca);
add(JTmarca);
add(JLmodelo);
add(JTmodelo);
add(JLcilindros);
add(JTcilindros);
add(JLpotencia);
add(JTpotencia);
add(JLnumeroRodas);
add(JTnumeroRodas);
add(JLpreco);
add(JTpreco);
add(JLpassageiros);
add(JTpassageiros);
add(JLTipoCombustivel);
add(JTTipoCombustivel);
add(JLpercentual);
add(JTpercentual);
add(JBsalvar);
add(JBlimpar);
}
public void addLimpaListener(ActionListener limp){
this.JBlimpar.addActionListener(limp);
}
}
package controller;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import principal.JanelaCarro;
public class ControllerCarro{
public JanelaCarro car = new JanelaCarro();
public ControllerCarro(){
this.car = car;
car.addLimpaListener(new LimpaConteudo());
}
class LimpaConteudo implements ActionListener {
public void actionPerformed(ActionEvent evt) {
Object lim = evt.getSource();
if (lim == car.JBlimpar) {
car.LimparTudo();
}
}
public void LimparTudo(){
car.JTmarca.setText("");
car.JTmodelo.setText("");
car.JTcilindros.setText("");
car.JTpotencia.setText("");
car.JTnumeroRodas.setText("");
car.JTpreco.setText("");
car.JTpassageiros.setText("");
car.JTTipoCombustivel.setText("");
car.JTpercentual.setText("");
}
}
}