2012-11-20 3 views
0

애플릿을 배우려고하고이 코드를 실행할 때 컴파일 타임 오류가 없지만 문제는 코드에 응답이 없기 때문입니다. 간단한 메모장과 애플릿 뷰어를 사용하여 완성되었습니다. 애플릿을 클릭하면 좌표가 표시되어야하지만 그것은 일어나지 않습니다. 관련 html 코드를 입력하고 브라우저를 통해 실행하려했지만 응답은 같습니다. 어떤 도움이 정말 귀하의 mouseClicked 기능 x 및 범위 밖으로 y 소요내 코드에 대한 응답 없음

import java.awt.*; 
import java.awt.event.*; 
import java.applet.*; 
/* 
<applet code="MyMouseApplet.class" 
width = "400" 
height = "400"> 
</applet>*/ 

public class MyMouseApplet extends Applet implements MouseListener{ 
int x,y; 
String str=" "; 
public void init(){ 
this.addMouseListener(this); 
} 
public void paint(Graphics g){ 
g.drawString(str,x,y); 
} 
public void update(Graphics g){ 
paint(g); 
} 
public void mouseClicked(MouseEvent m) 
{ 
int x = m.getX(); 
int y = m.getY(); 
str="x:" + x + "y:" + y; 
repaint(); 
} 
public void mouseExited(MouseEvent m){} 
public void mouseEntered(MouseEvent m){} 
public void mousePressed(MouseEvent m){} 
public void mouseReleased(MouseEvent m){} 
} 
+2

브라우저의 'Java 콘솔'을 확인 했습니까? – SJuan76

+0

예 그렇지만 여전히 응답이 없습니다. –

+0

init() 대신 start() 메소드에 addMouseListener를 넣으십시오. – antlersoft

답변

0

이해할 수있을 것이다. 다음을 수행하십시오 :

public void mouseClicked(MouseEvent m) 
{ 
    //int x = m.getX(); 
    //int y = m.getY(); 
    x = m.getX(); 
    y = m.getY(); 
    str="x:" + x + "y:" + y; 
    repaint(); 
} 

로컬 변수가 아닌 클래스의 필드에 액세스합니다.

+0

감사합니다. 내게 신기한 실수 인 것 같아 –

+0

정답을 수락하는 것을 잊지 마시고 체크 표시를 클릭하십시오 :) – durron597