我知道如何用Java创建形状,但是由于某些原因,我看不到框架上的形状。我尝试了多种创建形状的方法,但不适用于我的特定班级。最后,我需要一个可以创建一个圆的类(可以将其放置在任意位置)。
我知道其他人已经在这里问过这个问题,因此我尝试了解决方法。但这是行不通的...我尝试了什么:类扩展了Component,JPanel,带有Graphics2D的不同解决方案,等等
我要在哪里(代码中的注释):
public class GameBoard extends JFrame implements KeyListener {
private CreateCircle circle;
public GameBoard() {
this.setSize(500, 500);
this.getContentPane().setBackground(Color.BLACK);
this.setTitle("Game");
this.setLayout(null);
this.setVisible(true);
this.setLocationRelativeTo(null);
this.setResizable(false);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
//CREATE CIRCLE
circle = new CreateCircle();
this.add(circle);
}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode() == 38) {
//UP
}
if(e.getKeyCode() == 40) {
//DOWN
}
if(e.getKeyCode() == 39) {
//RIGHT
}
if(e.getKeyCode() == 37) {
//LEFT
}
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
}
答案 0 :(得分:0)
我们假设您的`CreateCircle是一个JPanel。
class CreateCircle extends JPanel{
@Override
public void paintComponent(Graphics g){
super.paintComponent(g);
g.setColor(Color.RED);
g.drawOval(20, 20, 80, 80);
}
}
这应该与您拥有的代码一起使用。