正如你已经知道的一切,我开始写关于太空的小游戏。
“不错的开始” - https://stackoverflow.com/questions/19818655/simulation-of-spaceplanets-and-stars :D
我写了一个小计划,第一点就是'随机生成星星。你可以说,更容易使用随机数。
Random random = new Random();
int x = random.nextInt(getWidth()*2);
int y = random.nextInt(getHeight()*2);
g.drawImage(Image,x,y,4,4,this);
但它不起作用(
它不工作,因为图片“跳”在屏幕上。
至于视频:https ://www.youtube.com/watch?v=EELo_-eh3fA
那么如何随机带星星呢?(星号是小图片或白色方块)这就是全部代码:
import java.awt.Graphics;
import javax.imageio.ImageIO;
import javax.swing.JComponent;
import javax.swing.JFrame;
import java.io.IOException;
public class Game extends JComponent {
public Game() {
try {
image = ImageIO.read(getClass().getResource("star.png"));
} catch (IOException e) {
e.printStackTrace();
}
}
public void paint(Graphics g) {
super.paint(g);
repaint();
Random random = new Random();
int x = random.nextInt(getWidth()*2);
int y = random.nextInt(getHeight()*2);
g.drawImage(Image,x,y,4,4,this);
}
public static void main(String[] args) {
JFrame frame = new JFrame(NAME);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.add(new Game());
frame.setVisible(true);
frame.setLocationRelativeTo(null);
frame.setResizable(true);
frame.addMouseListener(mos);
frame.addMouseMotionListener(mos);
}
}
这里的代码不起作用(图片再次跳转。
public void paintComponent(Graphics g) {
super.paintComponent(g);
repaint();
Random random = new Random();
int x = random.nextInt(getWidth()*2);
int y = random.nextInt(getHeight()*2);
g.drawImage(kor,x,y,10,10,this);
}
@camickr,你说要删除 repaint(); 但没有它我没有照片