金蝶EAS·BOS,客户端操作添加进度栏,进度条

本文介绍如何在金蝶EAS客户端中实现数据导入功能时添加进度条显示,通过具体代码示例展示了从文件选择到数据解析、验证及最终展示整个过程中进度条的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

金蝶EAS客户端中,数据导入等操作,需要等待较长时间时,添加进度栏相关代码。

仅供参考。


/**
 * 引入模板
 * 将科目余额数据从电子表格中读取到序时簿
 */
public void actionExcelImport_actionPerformed(ActionEvent e) throws Exception {
	
	JFileChooser chooser = new JFileChooser();
	chooser.showOpenDialog(this); //文件选择窗口
	if(chooser.getSelectedFile() == null){
		return;
	}
	String fileName = chooser.getSelectedFile().getName(); //获取文件名
	if(!(fileName.indexOf(".xls") == (fileName.length() - 4) || fileName.indexOf(".XLS") == (fileName.length() - 4))){
		MsgBox.showWarning(this, "选取的数据文件应为.xls格式。");
		return;
	}
	comp = this; //用于指定父窗口
	filePath = chooser.getSelectedFile().getPath(); //文件路径
	LongTimeDialog dialog = new LongTimeDialog((Frame) SwingUtilities.getWindowAncestor(this)); //进度栏
	dialog.setLongTimeTask(new ILongTimeTask() {
		
		public void afterExec(Object obj) throws Exception {}
		public Object exec() throws Exception {
			
	    	long start = System.currentTimeMillis(); //开始计时
	    	dataList = AccountBalanceUtil.parseExcel(filePath, 3, 9); //解析电子表格
	    	initMappingData(); //初始化映射基础数据缓存
	    	verifyDataList(dataList); //数据队列校验
	    	verifyArticlan(dataList); //勾稽关系校验
	    	fillData(dataList); //填充数据到序时簿表格
	    	long end = System.currentTimeMillis(); //结束计时
	    	String msg = "成功引入模板!共" + dataList.size() + "行数据,耗时" + (end - start) / 1000 + "秒。";
	    	MsgBox.showInfo(comp, msg);

			return null;
			
		}
		
	});
	dialog.setTitle("正在引入模板,请稍等......");
	dialog.show();
	
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值