public void saveImageFile(){
		this.setAlwaysOnTop(false);//取消JFrame窗体置顶
		try {
			this.setIconImage(ImageIO.read(PrintScreen.class.getResourceAsStream("/org/marker/screen/res/icon.png")));
		} catch (IOException e1) { e1.printStackTrace(); }
		jc = new JFileChooser();
		
		jc.setDialogTitle("保存截图");
		
		//保存文件格式
        jc.addChoosableFileFilter(new FileFilter("bmp",".bmp (*.bmp)"));
        jc.addChoosableFileFilter(new FileFilter("gif",".gif (*.gif)"));
        jc.addChoosableFileFilter(new FileFilter("png",".png (*.png)"));
        jc.addChoosableFileFilter(new FileFilter("jpg",".jpg (*.jpg; *.jpeg; *.jpe)"));
        
        //不显示所有文件
        jc.setAcceptAllFileFilterUsed(false);
        
        //显示保存文件选择器窗口
		int result = jc.showSaveDialog(this);
		
		if (result == JFileChooser.APPROVE_OPTION) { // 用户点击了“确定”按钮
			File file = jc.getSelectedFile(); //获得文件名
			String ends = ((FileFilter)jc.getFileFilter()).getEnds(); // 获得过滤器的扩展名
			File newFile = null;
			if(file.getAbsolutePath().toUpperCase().endsWith(ends.toUpperCase())) { // 如果文件是以选定扩展名结束的，则使用原名
			    newFile = file;
			} else {
			    newFile = new File(file.getAbsolutePath() +"."+ ends);// 否则加上选定的扩展名
			}
			try {
				newFile.getCanonicalPath();//获取产生异常证明不能保存
				imageCache = (BufferedImage) getScreenImage();
				ImageIO.write(imageCache, ends, newFile);
			} catch (IOException e) {
				System.err.println("save failed! ");
				saveImageFile();
			}
		}else if(result == JFileChooser.CANCEL_OPTION){//取消按钮
			jc.setVisible(false);
			return;
		}else if(result == JFileChooser.ERROR_OPTION ){//错误
			System.out.println("错误");
		}
		finishAndinitialization();//初始化并结束
	}