平铺的图像摆动

我有任务准备两个摆动的窗户。 一个包含正方形网格,其中包含随机数。 第二,我需要加载平铺图像,然后以正确的顺序显示它们,形成平铺图像。

Windows应如下所示:

替代文字http://img535.imageshack.us/img535/3129/lab8a.jpg

好的,那怎么咬这个? 我只使用了几次摆动来绘制一些二维折线,所以基本上我理论上现在该做什么。

好吧,窗口号1:我开始为窗口创建Jframe。 然后我做循环,并在其中创建16个JLabel随机数字? 如何在每个图块和整个窗口之间设置边距?

窗口编号2:所以我开始相同,但不是加载数字我添加图像? 现在,如何从文件加载图像然后将其设置为背景?

以下代码使用GridLayout JLabel。 GridLayout的参数如下:rows,cols,horizo​​ntal gap,vertical gap。 在下面的示例中,我在垂直和水平标签之间有3个像素宽的间隙。

要使用图像而不是数字,可以将ImageIcon传递给JLabel的构造函数而不是文本。

但是,看起来你正在做一个用户应该可以点击瓷砖的游戏。 这表明您可能应该使用按钮而不是标签,但这取决于您:-)

 import java.awt.GridLayout; import javax.swing.*; import javax.swing.border.BevelBorder; public class FrameTest { public static void main(String[] args) { final JFrame f = new JFrame("Frame Test"); JPanel panel = new JPanel(new GridLayout(4, 4, 3, 3)); for (int i = 0; i < 16; i++) { JLabel l = new JLabel("" + i, JLabel.CENTER); //JLabel l = new JLabel(new ImageIcon("image_file.png"), JLabel.CENTER); l.setBorder(BorderFactory.createBevelBorder(BevelBorder.RAISED)); l.setFont(l.getFont().deriveFont(20f)); panel.add(l); } f.setContentPane(panel); f.setSize(200, 200); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true); } } 

在此处输入图像描述