Start Search Contents Index Links About
SlideShow.java
/*
 * Author: Havard Rast Blok
 * E-mail:  
 * Web   : www.rememberjava.com
 */

import java.awt.*;
import java.io.*;
import javax.swing.*;

import com.rememberjava.io.SunFileFilter;

/*
 * Application to view an image.
 */
public class SlideShow extends JFrame
{
  private SunFileFilter fileFilter;
  private Toolkit tk;
  private File files[];
  private Image img;

  public SlideShow()
  {
    super("My Slide Show");

    fileFilter = new SunFileFilter(new String[]{"gif""png""jpg"});
    files = loadFileNames();
    
    tk = Toolkit.getDefaultToolkit();
    setSize(100100);
    show();
    
    showImages();
  }
  
  private File[] loadFileNames()
  {  
    String curDir = null;
    File path;
    File ans[];
    
    //get the current directory
    try
    {
      curDir = System.getProperty"user.dir" );
    }
    catch(Exception e)
    {
      System.out.println("SlideShow.loadFileNames - error getting current dir: "+e);
      System.exit(1);
    }
    
    path = new FilecurDir );
    ans = path.listFilesfileFilter );
    
    return ans;
  }
  
  private void showImages()
  {
    
    
    for(int i=0; i<files.length; i++)
    {
      img = tk.createImage(files[i].getAbsolutePath());
      repaint();
      
      try
      {
        Thread.sleep(8000);
      }
      catch(Exception e) {} //do nothing
    }
  }
  
  public void paintGraphics g )
  {
    int imgWidth, imgHeight;
    
    ifimg != null )
    {
      imgWidth = img.getWidth(this);
      imgHeight = img.getHeight(this);

      ifimgWidth > && imgHeight > 0)
      {
        setSizeimgWidth, imgHeight );
        g.drawImage(img, 00this);
      }
    }
  }

  public static void mainString [] args)
  {
    new SlideShow()
  }

}


site: Håvard Rast Blok
mail:
updated: 27 July 2007