2010-06-10 2 views
2

나는 숙제 프로젝트를하는 학생입니다. 나는 새로운 윈도우 7 노트북에 이미지를 표시하기 위해 다음 코드를 얻으려고 하루를 보냈다. 나는 그것을 컴파일하고 내 오래된 xp pc에서 실행하고 그것은 효과가! 나는 정말로 내 노트북을 사용하고 싶다. 이미지를 표시하는 방법에 대한 제안? 자바 코드. HTML과 immage는 모두 내 플래시 드라이브의 동일한 하위 디렉토리에 있습니다. C : Program Files (x86) \ Java \ jdk1.5.0_02 \ bin 디렉토리로 이동하려고 시도했지만 여전히 작동하지 않았습니다.자바 문제 캔트 이미지 파일 찾기

import java.awt.*; 
import java.applet.*; 
import java.awt.event.*; 
import java.awt.image.*; 

public class MoveIt extends Applet implements ActionListener 
{ 
// set variables and componets 
    private Image cup; 
    Panel keypad = new Panel(); 
public int top = 15; 
public int left = 15; 
private Button keysArray[]; 



public void init() 

{ 

    cup = getImage(getDocumentBase(), "cup.gif"); 
    Canvas myCanvas = new Canvas(); 

    keysArray = new Button[5]; 
    setLayout(new BorderLayout(5,5)); 
    setBackground(Color.blue); 

    // set up keypad layout 
    keypad.setLayout(new BorderLayout(0,0)); 

    keysArray[0] = new Button("Up"); 
    keysArray[1] = new Button("Left"); 
    keysArray[2] = new Button("Center"); 
    keysArray[3] = new Button("Right"); 
    keysArray[4] = new Button("Down"); 

    // add buttons to the keypad panel 

    keypad.add(keysArray[0], BorderLayout.NORTH); 
    keysArray[0].addActionListener(this); 
    keypad.add(keysArray[1], BorderLayout.EAST); 
    keysArray[1].addActionListener(this); 
    keypad.add(keysArray[2], BorderLayout.CENTER); 
    keysArray[2].addActionListener(this); 
    keypad.add(keysArray[3], BorderLayout.WEST); 
    keysArray[3].addActionListener(this); 
    keypad.add(keysArray[4], BorderLayout.SOUTH); 
    keysArray[4].addActionListener(this); 


    // add canvas and keypad to the BorderLayout 
    add(myCanvas, BorderLayout.NORTH); 
    add(keypad, BorderLayout.SOUTH); 
} 

public void paint(Graphics g) 
{ 
    g.drawImage(cup, left, top, this); 
} 


    public void actionPerformed(ActionEvent e) 
    { 
// test for menu item clicks 
    String arg = e.getActionCommand(); 
    if (arg == "Up") 
    top -=15; 
    else 
    if (arg == "Down") 
    top +=15; 
    else 
    if (arg == "Left") 
    left -=15; 
    else 
    if (arg == "Right") 
     left +=15; 
    else 
    { 
     top = 60; 
     left =125; 
    } 
    repaint(); 
    } 
} 
+0

태그가있는 애플릿도 있습니다. AppletViewer 또는 브라우저를 통해 애플릿을 실행하고 있습니까? –

답변

1

은 내가 Applet 사람이 아니지만, MoveIt.htmlMoveIt.class 함께 cup.gif 퍼팅하는 작업을 보였다. 또한 paint() 메서드를 Applet으로 재정의하고 Canvas 메서드를 재정의합니다. 옆으로, interned 자바 문자열이 있기 때문에 arg == "Up" 일하지만,보다 신뢰할 수있는 술어는 "Up".equals(arg)입니다.

+0

정보 주셔서 감사합니다. 내가 깨달은 것보다 JAVA에 더 많은 것을 가지고있다. – KimR