【发布时间】:2013-11-10 14:53:12
【问题描述】:
我的问题是这样的:
(游戏:显示井字游戏)显示一个包含九个标签的框架。 标签可以显示 X 的图像图标或 O 的图像图标。 显示什么是随机决定的。使用Math.random()方法生成整数0或1,对应显示一个X或 O 图片图标。这些图像位于 x.gif 和 o.gif
文件中
我遇到的问题是 imgaes 不会在程序中显示。当我运行它时,程序会生成一个空帧。 我的猜测是图像文件的位置肯定有问题。
我已经从这本书的出版商那里下载了一个 .zip 文件,我正在使用(Liang 的 Java 编程简介),看起来图像应该包含该文件。但它没有。所以我在网上找到了相同的 .gif 并下载了它们。现在我想知道我如何设置正确的位置。
我认为代码本身应该没问题。 反正就是这里了。
import java.awt.GridLayout;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class TicTacToe extends JFrame {
private ImageIcon cross = new ImageIcon("image/x.gif");
private ImageIcon not = new ImageIcon("image/o.gif");
public TicTacToe() {
setLayout(new GridLayout(3, 3));
for (int i = 0; i < 9; i++) {
int mode = (int) (Math.random() * 3.0);
if (mode == 0)
add(new JLabel(this.cross));
else if (mode == 1)
add(new JLabel(this.not));
else
add(new JLabel());
}
}
public static void main(String[] args) {
TicTacToe frame = new TicTacToe();
frame.setTitle("TicTacToe");
frame.setSize(200, 200);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(3);
frame.setVisible(true);
}
}
另一个小问题,会使用这个:
import java.awt.*;
import javax.swing.*;
代替这个:
import java.awt.GridLayout;
import javax.swing.ImageIcon;
做一件坏事?我在想如果你认为我的讲师会发现总是导入所有而不是我需要的单独的懒惰。
提前 - 谢谢。
【问题讨论】:
标签: java image user-interface tic-tac-toe