我在尝试绘制JPanel
. 我已经学会了如何创建 a JFrame
、 a JPanel
、添加事件处理程序、在 applet 中做同样的事情,以及其他一些基本的 GUI 开发。但是每次我尝试JPanel
使用paintComponent(Graphics g)
orpaint(Graphics g)
方法绘制 a 时,什么都没有出现。按钮,以及其他JComponents
,显示得很好。但是g.drawString
,g.drawRect
等会导致空白JFrame
窗口。
这是我的代码:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
public class Game extends JPanel {
public static void main(String[] args) {
new Game().game();
}
JPanel panel;
JButton button2;
JButton button;
public void game() {
panel = new JPanel();
button = new JButton("Ok");
panel.setLayout(new FlowLayout());
panel.add(button);
button2 = new JButton("Cancel");
JFrame frame = new JFrame("Game");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(500,500);
frame.setResizable(false);
frame.add(panel);
frame.setVisible(true);
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawString("hi",100,100);
g.fillRect(100,50,200,300)
}
}