Avatar billede fireworld Nybegynder
08. oktober 2001 - 17:17 Der er 5 kommentarer og
2 løsninger

fejl?

import java.awt.*;
import java.awt.event.*;
public class test implements MouseListener
{

public void mousePressed(MouseEvent e)
    {
    Point m_down = e.getPoint();

    System.out.println(\"X: \"+m_down.x+\" Y: \"+m_down.y+\"\");
    }
public void mouseReleased(MouseEvent ev) {}
public void mouseClicked(MouseEvent ev) {}
public void mouseEntered(MouseEvent ev) {}
public void mouseExited(MouseEvent ev) {}



}

den giver denne fejl

Exception in thread \"main\" java.lang.NoSuchMethodError: main
Avatar billede ladyhawke Novice
08. oktober 2001 - 17:22 #1
hmmm er der ikke andet med i dit program? (andre klasser) ellers er der jo slet ingen main() metode....
Avatar billede ladyhawke Novice
08. oktober 2001 - 17:28 #2
Jeg har brugt følgende klasse i et program (med indhold i de forskellige metoder) og det virker fint. Den komponent som skal bruge disse metoder skal blot have tilføjet en \"MouseMotionListener\" eller en \"MouseListener\"...


private class drawMouseListener implements MouseMotionListener, MouseListener {
 
public void mousePressed (MouseEvent me) {
}

public void mouseDragged(MouseEvent me){     
}

public void mouseReleased(MouseEvent me){
}

public void mouseMoved(MouseEvent me){       
}

public void mouseClicked(MouseEvent me){
}

public void mouseExited(MouseEvent me){
}

public void mouseEntered(MouseEvent me){
}

public void updateLocation(MouseEvent me){
}   

}
Avatar billede fireworld Nybegynder
08. oktober 2001 - 17:33 #3
ok... har prøvet noget nyt... i et applet i stedet... men der sker intet ... får godt nok ingen ERROR men der sker intet nå man klikker med musen

import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public class test extends Applet implements MouseListener
{
    Label status = new Label(\"Klik med musen\");
public void init()
    {
    this.add(status,null);
    }


public void mousePressed(MouseEvent e)
    {
    blah(e);
    }
public void mouseReleased(MouseEvent ev) {}
public void mouseClicked(MouseEvent ev) {}
public void mouseEntered(MouseEvent ev) {}
public void mouseExited(MouseEvent ev) {}

public void blah(MouseEvent e)
    {
    Point m_down = e.getPoint();
    status.setText(\"X : \"+m_down.x+\" Y: \"+m_down.y+\"\");
    repaint();
    }


}
Avatar billede mipe1 Nybegynder
08. oktober 2001 - 17:34 #4
Prøver du at \"køre\" denne klasse? Eller har du et andet program hvor du kalder fra ?
For denne listener skal du vil bruge til at adde til forskellige komponenter
Avatar billede mipe1 Nybegynder
08. oktober 2001 - 17:37 #5
Sagen er at du skal adde din mouselistener til de objekter der skal reagere på muse-klik, prøv med noget i stil med

public void init(){
  status.addMouseListener(this);
    this.add(status,null);

    }



Avatar billede ladyhawke Novice
08. oktober 2001 - 17:38 #6
Du er som nævnt nødt til at tilføje en listener til dine komponenter f.eks.:

JLabel label = new JLabel;
label.addMouseMotionListener(new drawMouseListener());
label.addMouseListener(new drawMouseListener());

under forudsætning af at du bruger den klasse jeg skitserede før...
Avatar billede fireworld Nybegynder
08. oktober 2001 - 17:51 #7
ok fandt ud af det med en


this.addMouseListener(this);



tak begge for hjælp ... damn faSt :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester