我試圖瞭解一個油漆圖形,但我的橢圓形不能繪製。有人可以告訴我我做錯了什麼,橢圓形不是繪圖嗎? 我在哪裏犯了一個錯誤?爲什麼橢圓不能繪製?
主要類:
import java.awt.EventQueue;
public class Main {
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
Frame frame = new Frame();
}
});
}
Frame類:
public class Frame extends JFrame {
private static final long serialVersionUID = 1L;
public static Grafika grafika;
public Frame() {
JFrame frame = new JFrame("Title");
grafika = new Grafika();
frame.setSize(500, 500);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
frame.setVisible(true);
frame.setLayout(null);
// frame.addKeyListener(this);
frame.add(grafika);
}
}
而在去年GRAFIC類:
public class Grafika extends JComponent {
int x = 200;
int y = 200;
public void paint(Graphics g) {
Graphics2D oval = (Graphics2D) g;
oval.setColor(Color.BLACK);
oval.fillOval(x, y, 100, 100);
oval.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
}
}
如果您的框架類擴展了JFrame,爲什麼要在框架構造函數中創建一個新的JFrame?你已經是一個JFrame。 – FredK