Ich möchte ein Bild auf dem Bildschirm nicht in Originalgrösse anzeigen lassen, sondern verkleinert (ca. um die hälfte). Wie kann ich das anstellen?
Code:
import java.awt.Canvas;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.MediaTracker;
public class ImgShowComponent extends Canvas
{
private Image img = null;
ImgShowComponent( String sFile )
{
img = getToolkit().getImage( sFile );
MediaTracker mt = new MediaTracker( this );
mt.addImage( img, 0 );
try { mt.waitForAll(); } catch( InterruptedException ex ) { }
}
public void paint( Graphics g )
{
g.drawImage( img, 50, 20, this );
}
public Dimension getPreferredSize()
{
return new Dimension( img.getWidth( this ), img.getHeight( this ) );
}
public Dimension getMinimumSize()
{
return getPreferredSize();
}
}
Code:
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
public class MyImgShow extends JFrame
{
MyImgShow( String sFile )
{
setLocation(15,15);
setSize( 390, 280 );
setVisible( true );
getContentPane().add( new ImgShowComponent( sFile ) );
pack();
addWindowListener(
new WindowAdapter() {
public void windowClosing( WindowEvent ev ) {
setVisible(false); } } );
}
}