이 코드에 문제가 있습니다. 어떤 이유로, paintComponent(Graphics g)
단순히 작동하지 않으며 강제하는 방법에 대한 답이없는 것 같습니다. 이것은 내 코드입니다.
import javax.swing.JFrame;
public class Robotron extends JFrame
{
public Robotron ()
{
//add(this); This one gave me an error
setSize(800, 600);
new TestFrame();
setVisible(true);
}
public static void main(String [ ] args)
{
new Robotron();
}
그리고 이것은 paintComponent 함수가있는 내 TestFrame 클래스입니다.
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JPanel;
public class TestFrame extends JPanel
{
public void paintComponent(Graphics g)
{
g.setColor(Color.BLACK);
g.fillRect(0, 0, getWidth(), getHeight());
g.setColor(Color.YELLOW);
g.fillRect(100, 100, 10, 30);
System.out.println("Abdullah Paint");
}
public TestFrame()
{
setFocusable(true);
repaint();
}
}
paintComponent를 실제로 재생하기 위해 무엇을 할 수 있습니까? 결국 내가 얻는 것은 System.out.println이 실행되지 않는 빈 JFrame입니다.
대단히 감사합니다.이 문제를 오랫동안 해결해 왔습니다.
이 때문에 JFrame에 아무것도 추가하지 않습니다.
//add(this);
여기에서, 당신은 비행하지 않을 구성 요소를 자체에 추가하려고했습니다.
대신 프레임에 TestFrame 인스턴스를 추가해야합니다.
add(new TestFrame());
setSize(800, 600);
setVisible(true);
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다