我们知道jasper viewer需要很多时间来根据显示的数据处理报告。 我想处理它,给用户加载信息。 这是我的一步:
而指向1 ,我不知道如何检查查看器是否在生成过程中? 请帮我。谢谢:))
答案 0 :(得分:0)
在另一个帖子中调用viewReport()
。存储实例级别AtomicBoolean,并在报告完成后将其设置为false。在客户端检查方法中,定期检查此实例变量以检查报告是否已完成。
伪代码示例:
public void YourClass {
private AtomicBoolean reportRunning;
...
private void getReport() {
new Thread() {
reportRunning = new AtomicBoolean(true);
JRViewer.viewReport();
reportRunning.set(false);
}.start();
}
// Call periodically and update UI
private boolean clientCheck() {
return reportRunning != null && reportRunning.get();
}