Hallo,
es ist zum verückt werden. Ich möchte einfach nur ein image auf ein JPanel zeichnen. Bei JFrame und Aufruf von getContentPane funktioniert es. Packe ich das image auf ein JPanel und dieses dann auf den Frame, wird nur ein kleines graues Feld in der Mitte des Panels dargestellt.
Weis jemand Rat?
schon mal vielen Dank.
es ist zum verückt werden. Ich möchte einfach nur ein image auf ein JPanel zeichnen. Bei JFrame und Aufruf von getContentPane funktioniert es. Packe ich das image auf ein JPanel und dieses dann auf den Frame, wird nur ein kleines graues Feld in der Mitte des Panels dargestellt.
Code:
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.*;
import javax.imageio.ImageIO;
import javax.swing.*;
class test extends JPanel
{
BufferedImage bar;
BufferedImage backgr;
static JFrame f;
public test()
{
try {
// if (offImage != null)
// g.drawImage(offImage, 0, 0, this);
bar = ImageIO.read(new File("client.png"));
System.out.println(new File("client.png").exists());
}
catch(IOException e)
{
System.err.println(e.getMessage());
}
}
public void paint(Graphics g) {
super.paint(g);
g.drawImage(bar, 230, 80, this);
System.out.println("ZEICHNE! "+p1x);
}
public static void main( String args[] ) {
f = new JFrame();
f.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
f.setSize ( 800, 574 );
JPanel p = new JPanel();
p.setSize( 800, 574);
// p.add ( new Label("fghj") ); //funktioniert!
p.add ( new test() );
p.setVisible( true );
p.addKeyListener(new Keyboard());
f.setContentPane ( p );
//f.getContentPane ( ).add(p); //funktioniert auch nicht!!
//f.getContentPane ( ).add(new test() )// funktioniert
f.setVisible( true );
}
}
schon mal vielen Dank.