2016-06-29 3 views
-1

6 * 6 그리드를 만들고 싶습니다. 다음 단계는 각 그리드에 이미지 타일을 열별로 배치하는 것입니다. 전체 이미지는 각 그리드의 모든 타일의 구성입니다. 그런 다음 6 * 6 그리드로 구성된 완전한 이미지 위에 선을 그립니다. JLabel을 사용해 보았고 JLabels의 6 * 6 그리드를 만들었고 이미지가 완전히 형성되었지만 이미지 위에 선을 그려 넣으려고했는데 그렇게 할 수 없습니다. 선은 이미지의 오른쪽에서부터 시작됩니다. 이 시점에서 나는 당혹 스럽네. 제발 저에게 어딘지 말해달라고하십시오.그래프에 선 그리기

+0

[MCVE] 게시 방법을 살펴보십시오. – Frank

답변

1

이렇게 ... 6 * 6 이미지 타일 격자가 필요하십니까? JPanel 페인트 메서드로이 작업을 수행 할 수 있습니다. 당신이 그 다음 인 JPanel를 사용하지 않는 경우 :

public class MyPanel extends JPanel{ 
    public MyPanel(){ 
     super.setSize(500,500); 
     super.setVisible(true); 

    } 
    @Override 
    public void paint(Graphics g){ 
     for(int i = 0; i < 6; i++){ 
      for(int j = 0; j < 6; j++){ 
       g.drawImage(theImage,i*10,j*10,null);// the tens are your image's dimensions. If your image is 100x50 then it must be i*100 and j*50 
      } 
     } 
    } 
} 

당신이 경우이 당신의 MyPanel 클래스

public class MyWindow extends JFrame{ 

    public MyWindow(){ 
     super.setVisible(true); 
     super.setSize(500,500); 
     MyPanel panel = new MyPanel(); 
     super.setContentPane(panel); 

    } 
} 

입니다 : 이이 당신의 MyWindow 클래스입니다 메인 클래스

public class Main{ 

     public static void main(String[] args){ 
      MyWindow window = new MyWindow(); 
     } 
    } 

입니다 JPanel을 사용하고 있습니다. 그러면 paint 메소드를 복사하십시오. 그리드의 형태로 이미지 36 (6 * 6)을 그릴 것입니다. 도움이 되었기를 바랍니다.

참고 : 테스트하지 않았지만 방금 게시물에 직접 작성했습니다. 어떤 종류의 오류가 있으면 저에게 답장하십시오.

+0

감사합니다. 나는 내가하고 싶은 것을 얻었습니다. –