画面キャプチャツールをつくっているのですが以前
MainInitクラスのnew Thumbnail(filepath);
でキャプチャ時にサムネイル表示させていたのですが、表示
できなくなりました。訂正箇所あれば教えてください!
Thumbnail(String filePath)StringFileにかえてもだめでした。。。
実際に追加するソースコード等を教えていただけると
助かります。

MainInit.java

public class MainInit implements ActionListener , WindowListener {        //impriments(組み込む)
private JFrame mainFrame;
private Container contentPane;
private JPanel itemPanel;
private JPanel textPanel;
private JPanel buttonPanel;
private JTextField textField;
private JButton dirButton;
private JButton addButton;
private ScreenShot screenShot;
private String  folderpath;
private JLabel  folderlabel;

private SettingWindow settingwindow;

private ItemBox itemboxtest1;
private ItemBox itemboxtest2;
private ItemBox itemboxtest3;
private ItemBox itemboxtest4;


public MainInit(){
    mainFrame = new JFrame("エビデンスキャプチャ");
    mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //終了方法
    mainFrame.setSize(500, 300);                //ウィンドウのサイズ
    mainFrame.setLocationRelativeTo(null);        //ウィンドウを画面の中央に表示
    contentPane = mainFrame.getContentPane();   //要素、成分 メインフレームのパネルを取得


    contentPane.setLayout(null);


    dirButton   = new JButton("Dir");        //Dirボタンの作成 クラス名( ) = コンストラクタ
    dirButton.setBounds(20, 0, 80, 30);
    contentPane.add(dirButton);                //コンパネにボタンを追加

    addButton   = new JButton("Capture");
    addButton.setBounds(400, 0, 90, 60);
    contentPane.add(addButton);



    JMenuBar menubar = new JMenuBar();
    JMenu menu1 = new JMenu("設定");            //メニューの生成
    JMenu menu2 = new JMenu("ヘルプ");
    JMenuItem menuitem1 = new JMenuItem("設定");

    menubar.add(menu1);
    menubar.add(menu2);
    menu1.add(menuitem1);

    mainFrame.getRootPane().setJMenuBar(menubar);        //メインフレームに対してメニューバーを追加

    folderlabel = new JLabel();
    textField   = new JTextField();            //オブジェクトの作成


    //「追加」ボタンとアクション・リスナーの関連付け
    dirButton.addActionListener(this);
    dirButton.setActionCommand("Dir"); // イベントに対するコマンド文字列登録
    addButton.addActionListener(this);
    addButton.setActionCommand("Capture"); // イベントに対するコマンド文字列登録


    menuitem1.addActionListener(this);
    menuitem1.setActionCommand("settingwindow"); // イベントに対するコマンド文字列登録


    itemPanel    = new JPanel();                                //上下
    itemPanel.setBounds(0, 0, 500, 100);
    contentPane.add(itemPanel);
    //itemPanel.setBackground(Color.RED);

    textPanel    = new JPanel();                                //directryfield dir add
    textPanel.setLayout(null);
    contentPane.add(textPanel);
    textPanel.setBounds(0,80, 500, 100);
    //textPanel.setBackground(Color.GREEN);

    buttonPanel = new JPanel();

    buttonPanel.setLayout(null);
    contentPane.add(buttonPanel);
    buttonPanel.setBounds(0,180,500,200);
    //buttonPanel.setBackground(Color.ORANGE);


    itemboxtest1 = new ItemBox();                            //□↑↓
    itemPanel.add(itemboxtest1);


    itemboxtest2 = new ItemBox();
    itemPanel.add(itemboxtest2);

    itemboxtest3 = new ItemBox();
    itemPanel.add(itemboxtest3);

    itemboxtest4 = new ItemBox();
    itemPanel.add(itemboxtest4);


    textPanel.add(folderlabel);
    folderlabel.setBounds(0, 30, 200, 30);

    textPanel.add(textField);
    textField.setBounds(320, 30, 150, 30);

    buttonPanel.add(dirButton);
    buttonPanel.add(addButton);



    // フォルダパス初期値
    folderpath = "C:\\tmp";
    // folderlabel,textFieldを初期値設定
    folderlabel.setText(folderpath);

    textField.setText("UT_FIL_%d-%d-%d-%d");        //初期表示フォルダパス


    mainFrame.setVisible(true);
    screenShot = new ScreenShot();

}


// 利用者の操作に応じた処理を実装
public void actionPerformed(ActionEvent event){
    // コマンド文字列を取得
    String cmd = event.getActionCommand();

    if(cmd.equals("Capture")){
        int x = mainFrame.getX();
        int y = mainFrame.getY();
        // 画面キャプチャー
        try{
            File filepath = FilePathCreate();
            // 自分を消す(見えない位置に移動)
            mainFrame.setLocation(-1000,-1000);
            // 画面キャプチャ
            screenShot.screenCapture(filepath);

            // 自分を表示(元の位置に移動)
            mainFrame.setLocation(x, y);

            new Thumbnail(filepath);            //サムネイルの表示


        } catch (AWTException e){
            // TODO 自動生成された catch ブロック
            e.printStackTrace();
        } catch (IOException e){
            // TODO 自動生成された catch ブロック
            e.printStackTrace();
        }
    }
    else if(cmd.equals("Dir")) {


    JFileChooser filechooser = new JFileChooser(folderpath);        //上二行と相互関係

             filechooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);

             int selected = filechooser.showSaveDialog(this.contentPane);
             if (selected == JFileChooser.APPROVE_OPTION){
                 File file = filechooser.getSelectedFile();
                 folderpath = file.getAbsolutePath();
                 folderlabel.setText(folderpath);


             }

    else if(cmd.equals("settingwindow")){


        settingwindow = new SettingWindow();
    }
             }


}


public File FilePathCreate() {
    String filename = FileNameCreate();
    String name = filename;
    int m = 1;
    do {
        File f = new File(folderpath, name + ".jpg");
        if (!f.exists()) {
            return f;
        }
        ++m;
        name = filename + "(" + m + ")" ;
    } while (m < 100); // 無限ループ防止
    throw new IllegalStateException("パス生成失敗");
}

// 数値リストからファイル名を生成
public String FileNameCreate() {
    String filename;
    String[] itemNumbers = new String[4];
    filename = textField.getText();
    int i=0;
    int found = 0;

    itemNumbers[0] = itemboxtest1.getText();
    itemNumbers[1] = itemboxtest2.getText();
    itemNumbers[2] = itemboxtest3.getText();
    itemNumbers[3] = itemboxtest4.getText();

    for(i=0; i<4; i++){
        found = filename.indexOf("%d",found);
        if( found != 0 ){
            filename = filename.replaceFirst("%d",itemNumbers[i]);
        }
    }
    return filename;
}


public void windowDeactivated(WindowEvent we) {                //非アクティブのイベント
    System.out.println("windowClosing");

}

// アプリケーションの起動
public static void main(String[] args) {
    new MainInit();
}
}

ItemBox.java

public class ItemBox extends JPanel  implements ActionListener{        //ItemBoxはJPanelというオブジェクトクラスを継承
                                                                //ActionListnerというインタフェースを実装
private JButton upButton;
private JButton downButton;
private JTextField itemField;
private Container contentPane;
private JPanel itemPanel;

GridBagLayout gbl = new GridBagLayout();



void addButton(Object itemobject, int x, int y, int w, int h) {
    GridBagConstraints gbc = new GridBagConstraints();
    gbc.fill = GridBagConstraints.BOTH;
    gbc.gridx = x;
    gbc.gridy = y;
    gbc.gridwidth = w;
    gbc.gridheight = h;
    gbl.setConstraints((Component) itemobject, gbc);
    add((Component) itemobject);
}

public ItemBox(){

    //setLayout(null);
    //setBackground(Color.blue);

    itemField = new JTextField("0");
    itemField.setPreferredSize(new Dimension(20, 10));        //アイテムフィールドの大きさ指定
    itemField.setFocusable(false);            //入力制限

    upButton   = new JButton("↑");            //upButtonオブジェクトを作成し、↑を代入する。
    downButton = new JButton("↓");            //downButtonオブジェクトを作成し、↓を代入する。



    upButton.setActionCommand("upButton");
    upButton.addActionListener(this);        //アクションイベントを受け取れるようになる。
    downButton.setActionCommand("downButton");
    downButton.addActionListener(this);

    setLayout(gbl);
    addButton(itemField, 0, 0, 1, 2);   // (0, 0) 幅=1, 高さ=3
    addButton(upButton, 1, 0, 1, 1);   // (1, 0) 幅=1, 高さ=1
    addButton(downButton, 1, 1, 1, 1);   // (1, 1) 幅=1, 高さ=1



 }



public String getText(){


    return itemField.getText();


}


//操作に応じた処理の実装
public void actionPerformed(ActionEvent event){        //イベントが発生するとここが処理される
    //ユーザーの操作e対象の判断                        //このクラスでのアクションリスナー
    String cmd = event.getActionCommand();

    if(cmd.equals("upButton")) {
        int i = Integer.parseInt(itemField.getText());
        i++;
        if(i>99)i=0;
        //itemField.setText(String.format("%1$02d",i));        //0埋め
        itemField.setText(String.valueOf(i));

    }
    else if(cmd.equals("downButton")){
            int i = Integer.parseInt(itemField.getText());
            i--;
        if(i<0)i=99;
        //itemField.setText(String.format("%1$02d",i));        //0埋め
        itemField.setText(String.valueOf(i));

    }
  }
}

ScreenShot.java

public class ScreenShot {

  public void screenCapture(File filepath) throws AWTException, IOException {
    Robot robot = new Robot();
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    BufferedImage image = robot.createScreenCapture(
        new Rectangle(0, 0, screenSize.width, screenSize.height));
    ImageIO.write(image, "PNG", filepath);        //PNGファイルの保存
  }
}