Interação JLabel com JButton para dar resultado em WARNING MESAGE

Pessoal, tou criando um programinha básico, to fazendo o curso e aprendi hj a fazer os botões, mais não tou conseguindo fazer o BOTÂO Calcular INTERAGIR com os resultados informados nos JLabell

Ao final, deveria calcular o Valor Montante e dar o resultado, já fiz td e já sei onde eu to errando, deu branco e não tou conseguindo mostrar o Resultado nakelas janelinhas de AVISO, queria mostar resultado na TELA WARNING se conseguirem me ajudar, me ajudem onde ta o erro ??? O Erro provavelmente ta onde eu “empaquei” . Obrigado

  1. Evite escrever LETRAS MAIUSCULAS nos títulos de seus tópicos;
  2. Evite escrever também o óbvio, como DUVIDA, AJUDA, HELP, SOCORRO, etc.

Você deve implementar a ação dentro do actionPerformed do botão. Seu código tem um actionPerformed na linha 56.

meu da uma conferidinhaa aii bele

public class Hipoteca extends JFrame {   
  

    private JLabel montante;   
    private JLabel juros;   
    private JLabel tempo; 
    private JLabel resultado; 
    private JTextField val1;   
    private JTextField val2;   
    private JTextField val3;
    private JTextField campoRes;
    private JButton calcula,apagar;   
  
    public Hipoteca() {   

    	super("Linguagem de Programação II");
		setSize(400, 255);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setResizable(false);
		getContentPane().setLayout(null);
        java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();   
        this.setSize(new java.awt.Dimension(336, 343));   
        this.setLocation((screenSize.width-336)/2,(screenSize.height-343)/2);   
         
  
        montante = new JLabel("Montante");   
        montante.setBounds(14, 56, 57, 13);   
        add(montante); 
        
        juros = new JLabel("Juros (Anual)");   
        juros.setBounds(16, 92, 132, 13);   
        add(juros, null);   
        
        tempo = new JLabel("Tempo (anos)");   
        tempo.setBounds(16, 129, 89, 13);   
        add(tempo);   
        
        val1 = new JTextField();   
        val1.setBounds(108, 51, 100, 21);   
        add(val1);   
        val2 = new JTextField();   
        val2.setBounds(109, 89, 100, 21);   
        add(val2);   
        
        val3 = new JTextField();   
        val3.setBounds(111, 128, 100, 21);   
        add(val3);   
        
        
        resultado=new JLabel("RESULTADO:");
        resultado.setBounds(0, 240, 80, 20);
        add(resultado);
        
        campoRes=new JTextField();
        campoRes.setBounds(111,240,100,21);
        add(campoRes);
        
        calcula = new JButton("CALCULAR");   
        calcula.setBounds(100, 174, 100, 30);   
        
        calcula.addActionListener (new ActionListener() {   
            public void actionPerformed(ActionEvent e) {   
            	if(val1 != null){    //aqui vc pode ver se os campos estao vazios
                calcular();  
            	}
            }   
        });   
  
        addWindowListener(new WindowAdapter() {   
            public void windowClosing(WindowEvent e) {   
                aoFechar();   
            }   
        });   
        add(calcula);
    
        apagar=new JButton("LIMPAR");
        apagar.setBounds(0, 174, 100, 30);
        apagar.addActionListener(new ActionListener() {   
            public void actionPerformed(ActionEvent e) {
        		val1.setText("");
        		val2.setText("");
        		val3.setText("");
        		
        	}
        });
        add(apagar);
        
    }   
    
  
    private void aoFechar() {   
        System.exit(0);   
    }   
  

       
    public void calcular() {   
       
     
    double montante= Double.parseDouble(val1.getText()) ;   
    double juros= Double.parseDouble(val2.getText()) ;   
    double tempo= Double.parseDouble(val3.getText()) ;   
       
    double p1 = montante * juros;   
    double p2 = juros/12;   
    double p3 = (1-(1+p2));   
             
       JOptionPane.showMessageDialog(null,"Hipoteca:"+p1/p3+"AVISO!!!"); //aqui mando Joption  
                     
                campoRes.setText(Double.toString(p1/p3));   //aqui no campo
                     
    }   
  
    public static void main(String args[]) {   
       Hipoteca user =new Hipoteca();
       user.setVisible(true);
    }  
    }

Vlw Felca, deu certo sim, brigadão msmo descobri onde estava meu erro…

desculpe Moderador, farei o correto na próxima !

Vlw Felca, deu certo sim, brigadão msmo descobri onde estava meu erro…

desculpe Moderador, farei o correto na próxima !