Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/03/2009, 01:38
cribelo
Usuario no validado
 
Fecha de Ingreso: agosto-2007
Mensajes: 141
Antigüedad: 16 años, 8 meses
Puntos: 1
Java - acceder a metodo

Hola, tengo un gran problema, espero que a alguien le haya pasado y lo haya podido arreglar.Va No se si es un gran problema:
el tema es asi, tengo dos clases, formulario y ManejadorBotones
esta ultima es el manejador de los eventos de los botones del Formilario, el tema es que en la clase ManejadorBotones cuando quiero preguntar por quien es el source del evento me dice "Cannot make a static reference to the non-static method getBotonArriba() from the type Formulario"

porque no puedo acceder? si esta como publico en la clase formlario, el codigo es este


Código:
import java.awt.Color;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Formulario  extends JFrame{
	private JPanel panelC;
	private JButton botonArriba;
	public JButton getBotonArriba(){
		return this.botonArriba;
	}
	public void setBotonArriba(JButton unBoton){
		this.botonArriba=unBoton; 
	}
	
	public void setPanelC(JPanel panelC) {
		this.panelC = panelC;
	}
	public JPanel getPanelC() {
		return panelC;
	}
	public Formulario() {
		setLayout(null);
		setSize(400,400);
		JButton unBoton = new JButton();
		unBoton.setText("Arriba");
		unBoton.setSize(100, 100);
		this.setBotonArriba(unBoton);
		
		JPanel unPanel =new JPanel();
		unPanel.setSize(100,100);
		unPanel.setBackground(new Color(255,0,0));
		this.setPanelC(unPanel);
		
		this.getPanelC().add(unBoton);
		
		
		this.getContentPane().add(this.getPanelC());
		
		
	
	}
	
	
	
}





import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import javax.swing.JOptionPane;

import Ejercicio1Practica1C.Main;


class manejadorBotones implements MouseListener {	 	
	 public void mouseClicked (MouseEvent arg0)
	   {
		//"ERORR AQUIIIIIIII"
                  if ( arg0.getSource() == Formulario.getBotonArriba()){
			 JOptionPane.showMessageDialog(null,"entro");
	   }
	   }
 
		 public void mouseEntered (MouseEvent arg0)
	   {
		}

	public void mouseReleased (MouseEvent arg0)
	   {
		}
	public void mouseExited (MouseEvent arg0)
	   {
		}
	public void mousePressed (MouseEvent arg0)
	   {
		}
	
 }
Bueno espero me auden, hace dos dias que estoy con este problema
Graciasssss