- 질문 게시판입니다.
Date 18/05/31 11:20:18
Name   L'Etranger
Subject   자바 코딩 관련 질문드립니다 ㅜㅜ
정말 완전 시작단계라 질문이 근본이 없는걸 이해해주셨으면 해요

코드를 여기다 붙여도 될런지 모르겠지만 그렇게 해볼게요


import java.awt.*;
public class HorseRun extends Frame implements Runnable {
    private static final String EXIT_ON_CLOSE = null;
private Image offScreenImage;
    private Graphics offScreen;
    private Image img;
    private Thread th;
    private int speed_x, speed_y;
    private int x, y;
    private boolean usedbuffer = true;

    public HorseRun() {
        super("HorseRun");

        initlodation();
        MediaTracker tracker = new MediaTracker(this);
        img = Toolkit.getDefaultToolkit().getImage("d:/HorseRun.gif");
        tracker.addImage(img, 0);
        try {
            tracker.waitForAll();
        } catch (InterruptedException e) {}

        th = new Thread(this);
        th.start();
    }

    public void run() {
        while (th != null) {
            repaint();
            try {
                th.sleep(50);
            } catch (InterruptedException e) {}
        }
    }

    void paintingjob(Graphics g, int w, int h) {
        g.clearRect(0, 0, w, h);
        x += speed_x;
        y += speed_y;
      if (x >= w) {
            initlodation();
        }
        g.drawImage(img, x, y, this);
      if (usedbuffer) {
            g.drawString("Use Double-Buffering", 100, h / 2);
        }
    }

    void initlodation() {
        x = 0;
        y = 120;
        speed_x = 5;
        speed_y = 0;
    }

    public void update(Graphics g) {
        paint(g);
    }

    public void paint(Graphics g) {
        int w = this.getSize().width;
        int h = this.getSize().height;
      if (offScreen == null && usedbuffer) {
            try {
                offScreenImage = createImage(w, h);
                offScreen = offScreenImage.getGraphics();
            } catch (Exception e) {
                offScreen = null;
            }
        }
      if (offScreen != null) {
            paintingjob(offScreen, w, h);
            g.drawImage(offScreenImage, 0, 0, this);
        }
        else {
            paintingjob(g, w, h);
        }
    }

위의 코드를 아래의 코드에 합치고 싶은데요
위의 코드는 더블 버퍼링을 이용하여 왼쪽부터 오른쪽으로 말을 달리게 한 코드구요

아래 코드는 경마장 5개 트랙중 하나를 나타낸 코드예요
여기선 말이 깜빡이며 오른쪽으로 가게되어요

위의 장점을 이용해서 아래로 합쳐서 돌릴 수 있는 방법이 있을까요??
질문이 난잡해서 죄송합니다 !!




public class TrackPanel2 extends JPanel implements Runnable{
private List list = new ArrayList<>();
private Track track;

public TrackPanel2(Track track) {
list.add(0, 0);
this.track = track;
}

@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Dimension dimension = this.getSize();
g.drawImage(new ImageIcon("img/horse.jpg").getImage(), 0, 0, (int)dimension.getHeight() - 20, (int)dimension.getHeight() - 20,  this);
}

public void setData(int data) {
Graphics g = this.getGraphics();
Dimension dimension = this.getSize();
list.add(1, data);
g.clearRect(list.get(0),  0, (int)dimension.getHeight() - 20, (int)dimension.getHeight() - 20);
g.drawImage(new ImageIcon("img/horse.jpg").getImage(), list.get(1), 0, (int)dimension.getHeight() - 20, (int)dimension.getHeight() - 20,  this);
list.add(0, list.get(1));
}

public void init() {
Graphics g = this.getGraphics();

list.set(0, 0);
list.remove(1);
paintComponent(g);
}

@Override
public void run() {
while(true) {
int pos = track.getList().get(1).getCurPos();
if(pos > 1500) break;
setData(pos);
}
}
}



0


목록
번호 제목 이름 날짜 조회 추천
4732 IT/컴퓨터워드프레스 쇼핑몰 제작 어떻게 공부하면 좋을까요? 2 루키루키 18/06/01 3997 0
4728 IT/컴퓨터공공기관 재직중인데 인터넷사이트 차단 질문입니다 6 [익명] 18/05/31 2387 0
4726 IT/컴퓨터자바 코딩 관련 질문드립니다 ㅜㅜ L'Etranger 18/05/31 3350 0
4721 IT/컴퓨터[코딩] 자바 코딩에 관해 질문 드려도 될까요?? (스윙 이미지 움직임 관련) 4 L'Etranger 18/05/30 3654 0
4685 IT/컴퓨터들고다니기 편한 노트북은 14인치와 15인치 중 어느 것이 더 편할까요...? 14 [익명] 18/05/24 10336 0
4682 IT/컴퓨터realtek 설정 관련 질문입니다. 3 구밀복검 18/05/24 7957 0
4678 IT/컴퓨터같은 1080p영화인데 화질이 차이가 날수 있을까요? 8 혼돈의카오스 18/05/23 8699 0
4667 IT/컴퓨터해외에서 인터넷 전화를 쓰고 싶습니다. 7 CONTAXS2 18/05/21 4140 0
4629 IT/컴퓨터블록체인의 미래 어떻게 보시나요? 13 [익명] 18/05/14 2696 0
4616 IT/컴퓨터사무용컴퓨터 문의 (2) - 어제 답변 토대로 수정안입니다. 13 [익명] 18/05/12 3078 0
4610 IT/컴퓨터괜찮은 정치 사이트가 있을까요? 6 기쁨평안 18/05/11 5267 0
4607 IT/컴퓨터휴대폰 sd 카드 손상....... ㅠㅠ 9 grey 18/05/10 3946 0
4606 IT/컴퓨터사무용 컴퓨터 견적 내봤는데, 조언 부탁드려요. 9 [익명] 18/05/10 1993 0
4597 IT/컴퓨터노트북에서 블루투스와 일반 이어폰 동시에 사용 가능할까요? 2 DarkcircleX 18/05/09 17060 0
4591 IT/컴퓨터가정용 프린터 추천해 주십시오. 11 맥주만땅 18/05/08 3950 0
4570 IT/컴퓨터하루만 맥을 쓸 수 있는 곳이 있을까요?? 13 [익명] 18/05/04 4281 0
4562 IT/컴퓨터도움 도움! 프로그램 설치가 안 됩니다 5 아침 18/05/03 13753 0
4551 IT/컴퓨터괜찮은 가격의 인체공학 키보드+마우스 추천 받아요~ 8 요거트 18/04/30 4754 0
4550 IT/컴퓨터Mendeley, 멘들레이 쓰시는 분 있나요? 6 시지프스 18/04/30 5207 0
4541 IT/컴퓨터삼성 스마트 스위치 백업이 안됩니다 2 파란 회색 18/04/29 5722 0
4528 IT/컴퓨터개발자분들에게 질문드려요! 15 라라 18/04/26 3536 0
4524 IT/컴퓨터인터넷이 자꾸 끊기는데 무얼 확인해야될까요?? 2 Broccoli 18/04/25 3756 0
4519 IT/컴퓨터크롬 전체 화면 안 되는 분 있으신가요? 4 [익명] 18/04/24 2305 0
4499 IT/컴퓨터미국 여행용 미국 유심을 구매하려고 합니다. 6 Dr.Pepper 18/04/20 4622 0
4481 IT/컴퓨터윈도우7이 깔린 컴퓨터에 윈도우10을깔아야되는데... 11 사나남편 18/04/17 5229 0
목록

+ : 최근 2시간내에 달린 댓글
+ : 최근 4시간내에 달린 댓글

댓글