G
Guest
Gast
ich bin gerade dabei als projekt für die schule einen image viewer zu programmiern....doch wenn ich ein bild öffne, welches größer als der bildschirm ist, wird es einfach abgeschnitten. ich wüsste gern wie ich für das bild scrollbars in das programm implementiere.
Code:
public class ImageViewer extends JFrame
{
public Image image;
private JMenuBar menuBar;
public ImageViewer()
{
//Frame wird eingerichtet
setTitle("ImageViewer");
setSize(600,400);
setLocation(100,100);
setResizable(false);
getContentPane().setLayout(new BorderLayout());
.
.
.
public void paint(Graphics g)
{
if(image != null)
{
setSize(image.getWidth(this),image.getHeight(this)+50);
g.drawImage(image,0,50,this);
g.setColor(Color.black);
}
setJMenuBar(menuBar);
}
public void print()
{
Toolkit tk = Toolkit.getDefaultToolkit();
PrintJob pj = tk.getPrintJob( new Frame(), "", null );
if ( pj != null ) {
Graphics g = pj.getGraphics();
g.drawImage(image,0,50,this);
g.dispose();
pj.end();
}
}
private void chooseFile()
{
FileDialog fd = new FileDialog(this,"Open File",FileDialog.LOAD );
fd.setFile("*.jpg;*.gif");
fd.show();
String path = fd.getDirectory() + fd.getFile();
image = Toolkit.getDefaultToolkit().getImage(path);
repaint();
}
.
.
.
}