【发布时间】:2018-09-24 02:10:45
【问题描述】:
我必须运行一个生成随机 tetromino 的 Java 程序。我有所有七个存储在不同方法中的代码:
public class TetrisComponent extends JComponent{
public void paintComponent(Graphics g){
Graphics2D g2 = (Graphics2D)g;
Rectangle2D.Double i = new Rectangle2D.Double(0, 100, 50, 50);
g2.setColor(Color.black);
g2.draw(i);
g2.setColor(Color.CYAN);
g2.fill(i);
Rectangle2D.Double i2 = new Rectangle2D.Double(50, 100, 50, 50);
g2.setColor(Color.black);
g2.draw(i2);
g2.setColor(Color.CYAN);
g2.fill(i2);
Rectangle2D.Double i3 = new Rectangle2D.Double(100, 100, 50, 50);
g2.setColor(Color.black);
g2.draw(i3);
g2.setColor(Color.CYAN);
g2.fill(i3);
Rectangle2D.Double i4 = new Rectangle2D.Double(150, 100, 50, 50);
g2.setColor(Color.black);
g2.draw(i4);
g2.setColor(Color.CYAN);
g2.fill(i4);
}
public void paintComponentj(Graphics g){
Graphics2D g2 = (Graphics2D)g;
Rectangle2D.Double j = new Rectangle2D.Double(200, 500, 50, 50);
g2.setColor(Color.black);
g2.draw(j);
g2.setColor(Color.blue);
g2.fill(j);
Rectangle2D.Double j2 = new Rectangle2D.Double(250, 500, 50, 50);
g2.setColor(Color.black);
g2.draw(j2);
g2.setColor(Color.blue);
g2.fill(j2);
Rectangle2D.Double j3 = new Rectangle2D.Double(300, 500, 50, 50);
g2.setColor(Color.black);
g2.draw(j3);
g2.setColor(Color.blue);
g2.fill(j3);
Rectangle2D.Double j4 = new Rectangle2D.Double(300, 550, 50, 50);
g2.setColor(Color.black);
g2.draw(j4);
g2.setColor(Color.blue);
g2.fill(j4);
}
}
我将如何运行这个程序(我有一个单独的 TetrisViewer 类)以仅运行 paintComponent 方法或 paintComponentj 方法,但随机运行?有没有办法做到这一点?
【问题讨论】: