Ach, mein Java scheint schon arg eingerostet zu sein. Ichwollte alles mal wieder auffrischen und habe ein Problem beim Setzen der Hintergrundfarbe:
Die Hintergrundfarbe wird in Zeile 43 gesetzt. Leider bleibt der Hintergrund in der Standardfarbe, obwohl ich den Code mehr oder weniger aus 'nem alten Programm übernommen habe. Wo liegt der Fehler?
Code:
import javax.swing.JFrame;
class Rechner extends JFrame
{
private Model mData;
private View mGfx;
private Control mCtrl;
public Rechner()
{
mData = new Model();
mGfx = new View();
mCtrl = new Control();
getContentPane().add(mGfx);
addMouseListener(mCtrl.mMA);
this.setSize(320,240);
this.setLocation(200, 200);
this.setTitle("Rechner");
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setVisible(true);
}
public static void main(String pArg[])
{
Rechner tProgram = new Rechner();
}
}
//==============================================
import java.awt.Graphics;
import java.awt.Color;
import javax.swing.JPanel;
class View extends JPanel
{
public View()
{
setBackground(Color.yellow);
}
public void paintComponent(Graphics pGfx)
{
super.paintComponents(pGfx);
int w = getWidth();
int h = getHeight();
pGfx.setColor(Color.black);
pGfx.drawRect(20,20,w-40,h-40);
}
}
// ...
Die Hintergrundfarbe wird in Zeile 43 gesetzt. Leider bleibt der Hintergrund in der Standardfarbe, obwohl ich den Code mehr oder weniger aus 'nem alten Programm übernommen habe. Wo liegt der Fehler?