私はJavaが初めてです。私はJavaクラスを持っていますが、先に進みたいです。私は本当にそれが好き!これは私の問題です。ゲームに必要な 2 つのパドルを描こうとしています。それらのために2つのオブジェクトを作成しましたが、両方とも「表示」されますが、次のことが起こります:
メインランナー
import javax.swing.JFrame;
public class PongRunner {
public static void main (String[] args)
{
new PongRunner();
}
public PongRunner()
{
JFrame PongFrame= new JFrame();
PongFrame.setSize(800,600);
PongFrame.add(new PaddleB());
PongFrame.add(new PaddleA());
PongFrame.setLocationRelativeTo(null);
PongFrame.setTitle("My Pong Game");
PongFrame.setResizable(false);
PongFrame.setVisible(true);
PongFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
PaddleA
およびPaddleB
drawRect Graphics であり、特定の四角形を描画します。
最初に追加するように指示したグラフィックJFrame
のみが表示されます。その下にあるものがフレームに追加されない理由と、両方のパドルを同時に描画する方法を知りたいと思っていましたJFrame
...本を読んだり、インターネットをできる限り調べたりしていますが、これらの中で運がありません2日。いくつかの助けがいいでしょう。Java の学習を始めたばかりで、進歩していると思います。actionListener
パドルを動かすためにそれらを使用する必要があるので、いくつかのヒントもありがとう:)、特に!
両方のパドルのソースコード:
import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JPanel;
import javax.swing.Timer;
public class PaddleA extends JPanel implements ActionListener
{
private Timer timer;
public void timer()
{
timer = new Timer(25, this);
timer.start();
}
public void actionPerformed(ActionEvent e)
{
repaint();
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
g.setColor(Color.RED);
g.fillRect(70,200,20,100);
}
}
パドルB:
import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JPanel;
import javax.swing.Timer;
public class PaddleB extends JPanel implements ActionListener
{
private Timer timer;
public void timer()
{
timer = new Timer(25, this);
timer.start();
}
public void actionPerformed(ActionEvent e)
{
repaint();
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
g.setColor(Color.BLUE);
g.fillRect(500, 200, 20, 100);
}
}