[RESOLVIDO]Problema no MouseListner

3 respostas
V

Bom dia pessoal, estou inciando ainda em Java, estou vendo na faculdade...

Ja programei em VB 6 porém agora estou querendo voar alto com o Java, porém estou tendo alguns problemas.

Meu código está dando um erro

package projeto_vinny;

import java.awt.Color;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.event.*;
import java.awt.event.MouseEvent;
import javax.swing.JOptionPane;

public class Menu extends JFrame implements ActionListener,MouseListener {

    JPanel PnlFundo;
    Color CorFundo, CorBotao;
    JButton BtnCredito;

    public Menu() {

        /*Instanciar coisas*/
        BtnCredito = new JButton("Adicionar crédito");
        CorBotao = new Color(61, 61, 61);
        CorFundo = new Color(102, 102, 102);
        PnlFundo = new JPanel();

        /*Setar propriedades JFrame*/
        setBounds(0, 0, 400, 300);
        setTitle("Menu Principal");
        /*Setar propriedades PnlFundo*/
        PnlFundo.setLayout(null);
        PnlFundo.setBackground(CorFundo);
        PnlFundo.setBounds(0, 0, getWidth(), getHeight());

        /*Setar propriedades BtnCredito*/
        BtnCredito.setBackground(CorBotao);
        BtnCredito.setForeground(Color.WHITE);
        BtnCredito.setBounds(0, 0, 140, 100);
        BtnCredito.addActionListener(this);
        BtnCredito.addMouseListener(this);

        /*Adicionar componentes na janela*/
        PnlFundo.add(BtnCredito);
        getContentPane().add(PnlFundo);

        setVisible(true);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    }
    
    public void mouseEntered(MouseEvent Evento)
    {   Object objetoRecebeuEvento;
        objetoRecebeuEvento = Evento.getSource();
        if (objetoRecebeuEvento == BtnCredito) {
            JOptionPane.showMessageDialog(null, "Passou em cima né");
        }

    }

    public void actionPerformed(ActionEvent Evento) {
        Object objetoRecebeuEvento;
        objetoRecebeuEvento = Evento.getSource();

        //Caso aperte no botao cancelar
        if (objetoRecebeuEvento == BtnCredito) {
            this.dispose(); // desalocar objetos da memoria
            System.exit(0); // retorna ao Sistema Operacional
        }
    }

    public static void main(String[] args) {
        Menu Programa = new Menu();
    }
}

Este é o erro gerado

java.lang.ExceptionInInitializerError Caused by: java.lang.RuntimeException: Uncompilable source code - projeto_vinny.Menu is not abstract and does not override abstract method mouseExited(java.awt.event.MouseEvent) in java.awt.event.MouseListener at projeto_vinny.Menu.(Menu.java:11) Could not find the main class: projeto_vinny.Menu. Program will exit. Exception in thread "main" Java Result: 1

Se alguem puder me ajudar eu agradeço...

Ate mais

Obrigado

3 Respostas

lina

Oi,

Pelo visto você só sobrescreveu o método mouseEntered. Quando você implementa uma classe, você é “obrigado” a sobrescrever seus métodos.

Logo, faltou alguns: mouseReleased e mouseClicked…

Tchauzin!

E

Ou seja, você precisa mexer nas opções do Eclipse, que tem a mania (por default) de deixar passar erros de compilação, fazendo com que a bomba estoure na hora de você rodar seu programa.


V

Isso mesmooo LINA…
Muito obrigado!

Até mais ver.

:smiley:

Quanto a outra resposta também serve para usuários Eclipse, eu utilizo NetBeans dai não tenho problema algum

Criado 22 de outubro de 2010
Ultima resposta 22 de out. de 2010
Respostas 3
Participantes 3