2016-06-29 16 views
-1

私は6 * 6のグリッドを作成したい、次のステップは各グリッドに画像タイルを列ごとに配置することです。完全な画像は各グリッド内のすべてのタイルの合成です。それから私は、6 * 6グリッドで形成された完全な画像上に線を描きたい。 私はJLabelを試して、6 * 6グリッドのJLabelsを作成しました。画像は完全に形成されましたが、画像上に線を引いていましたが、できません。ラインは画像の右側から始まります。私はこの時点で打たれています。私はそれをどこかでやるように教えてください。グラフ上に線を描く

+0

[MCVE]の投稿方法をご覧ください。 – Frank

答えて

1

そう... 6 * 6の画像タイルグリッドが必要ですか? JPanelのペイント方法でこれを行うことができます。あなたは、のJPanelを使用していない場合: をこれはあなたのメインクラスです

public class Main{ 

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

これはあなたのmywindowのクラスです:

public class MyWindow extends JFrame{ 

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

    } 
} 

これはあなたのMyPanelクラスです:

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 
      } 
     } 
    } 
} 

あなたの場合JPanelを使用している場合は、paintメソッドをコピーしてください。 これはあなたの画像を36(6 * 6)回、グリッドの形で描きます。 これが助けてくれることを願っています。

注:私はこれをテストしていない、私はちょうどポストに直接書きました。何らかのエラーがある場合は、私に返信してください。

+0

よろしくお願いします。 私は何をしたいのですか。 –

関連する問題