-1

我想创建一个 6*6 的网格,然后下一步是在每个网格中逐列放置图像 Tiles。完整的图像是每个网格中所有图块的组合。然后我想在由 6*6 网格形成的完整图像上画线。我已经尝试使用 JLabel 并创建了 6*6 的 JLabel 网格,并且图像已完全形成,但我试图在形成的图像上画线,我无法做到这一点。线从右侧图像的末端开始。我在这一点上感到震惊。请告诉我以某种方式去做。

4

1 回答 1

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,则只需复制绘制方法。这将以网格的形式绘制您的图像 36(6*6) 次。我希望这有帮助。

注意:我没有测试过,我只是直接写在帖子上。如果您有某种错误,请回复我。

于 2016-06-29T09:42:08.560 回答