我正在尝试Java图形,但是在使用null布局时遇到了问题。我真的很想使用null布局来布局JFrame中的其他组件,但是它不显示我要添加的图形组件。我使用了以下代码:
import javax.swing.JFrame;
public class Window {
int width = 900;
int height = 600;
JFrame window = new JFrame();
Window() {
initializeFrame();
window.getContentPane().add(new Lights());
}
public void initializeFrame() {
window.setSize(width, height);
window.setLocationRelativeTo(null);
window.setResizable(false);
window.setAutoRequestFocus(true);
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setLayout(null);
window.setVisible(true);
}
}
将此作为Lights类:
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Rectangle;
import javax.swing.JComponent;
public class Lights extends JComponent {
public void paint(Graphics g) {
Graphics2D g2 = (Graphics2D) g;
g2.draw(new Rectangle(5,5,100,100));
}
}
有人知道为什么它不起作用吗?并建议如何处理?
谢谢!