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