我注意到,当我paintComponent
在 java 中使用时,如果我使用System.out.println();
东西会打印出 2、3 次,有时甚至 4 次。我知道当你使用extends JPanel
它时会自动调用它,但为什么不止一次。
这是一些您自己尝试的代码。
import javax.swing.*;
import java.awt.*;
public class stack extends JPanel{
public stack(){
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
frame.add(this);
frame.setLocationRelativeTo(null);
frame.setSize(200, 200);
}
public static void main(String args[]){
stack s = new stack();
}
public void paintComponent(Graphics g){
super.paintComponents(g);
g.drawString("Thank You!", 100, 100);
System.out.println("Why?");
}
}