java - El método de componente de pintura no funciona para JFrame
swing paint (1)
Intento pintar una imagen en la pantalla después de intentar usar JLabel y ahora estoy probando el método paintComponent. Intenté insertar puntos de interrupción después de no ver los resultados y el método no se llama, y no aparece nada. ¿Que debería hacer? Aquí está mi código importante-
`
public void createWindow(){
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationRelativeTo(null);
frame.pack();
frame.setSize(xSize, ySize);
frame.setLocation(0, 0);
frame.addComponentListener(this);
//frame.add(im);
}
public void paintComponent(Graphics g) { super.paintComponent(g); g.drawImage(placeholder, 0, 0, getWidth(), getHeight(), null); g.drawString("Hello", 100, 100); }
También estoy usando un JFrame en lugar de JPanel o componente si eso hace la diferencia.
JFrame
no tiene un método paintComponent
. Debe evitar pintar directamente en un marco y en su lugar utilizar un JPanel
y anular su método paintComponent
También debe hacer uso de la anotación @Override, que generará una excepción de compilación si la clase principal no tiene el método que está intentando anular ...