2 c0ol jie c0ol_jie 于 2016.05.11 10:53 提问

JavaFX中 点击按钮调用脚本的同时如何展示进度条的进度

在做javafx的一个项目,有一个功能是 点击处理按钮,会调用脚本去执行一些操作 ,

现在为了程序在执行操作的时候给用户更好的体验,需要加一个进度条来显示执行的进度

(假设60秒内执行完成)

我现在遇到的问题是,执行脚本的时候 界面就卡住了,进度条无法显示进度,可能是线程的问题,

谁有办法解决的?谢谢~

代码片段:

btn02.setOnAction( e->{
//Windows系统下启动应用程序(计算器)
executeCmd("xxxxxxxxx 省略");

//进度条任务
Task task = createTask();
bar.progressProperty().bind(task.progressProperty());
Thread thread = new Thread(task);
thread.setDaemon(true);
thread.start();

}

//创建任务
private Task createTask(){

        return new Task<Void>(){
            @Override protected Void call() throws Exception {
                for(int iterations = 0; iterations < 100; iterations++){
                    if(isCancelled()) break;
                    TimeUnit.SECONDS.sleep(1);
                    //60秒内进度条到100%
                    updateProgress(iterations,60);
                }
                return null;
            }
        };
 } 

2个回答

caozhy
caozhy   Ds   Rxr 2016.05.11 12:22

这要看人物本身是否包含进度报告,如果没有,你只能估算进度。

caozhy
caozhy   Ds   Rxr 2016.05.11 12:22

这要看任务本身是否包含进度报告,如果没有,你只能估算进度。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
javaFX 使用进度条
new Thread(new Runnable() {   @Override public void run() {   Platform.runLater(new Runnable() {   @Override public void run() { //进度条开启   allButtonsDisabled(true);   }   });   try{   //要处理的业
JavaFX进度条展示
在网上找了好久,基本上都是写死的。 于是我找了个大牛同学改了改,于是有了以下版本。小伙伴可以直接用哦,但不知道java的能不能实现,我这个是fx里面的 import java.awt.Color; import javax.swing.JFrame; import javax.swing.JOptionPane; import javax.swing.JProgressBar;
javaFX 异步更新进度条
javaFX 异步更新进度条 Task<Integer> task = new Task<Integer>() { @Override protected Integer call() throws Exception { // TODO Auto-generated method stub
javafX8初探(进度条和进度指示器)
本章我们学习进度条和进度指示器。这会让我们应用中的任何操作的进度可视化。 ProgressIndicator类和它的子类ProgressBar提供了指示任务进度的能力。让我们知道我们的任务执行的情况。ProgressBar是条形图,ProgressIndicator是饼状图,如下:   创建进度控件 使用下面的代码块在我们的应用中插入进度控件。 ProgressBar pb = ne
Android 中带有进度条效果的按钮(Button)
安卓中带有进度条效果的按钮,如下图: 1.布局文件如下activity_main.xml 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 an
Shell 循环中实现展示进度百分比的脚本方法
Shell 循环中实现展示进度百分比的脚本方法当我需要处理一个几万行的文件的时候,需要处理的时间是比较长的。我一开始的想法是,没处理一行,就输出一个 # 号。但是这样还是会出现很多很多的 # 号,即便是放在一行,也是非常不优雅的。所以,我想实现一个展示进度百分比的脚本。实现思路 获取文件的行数 用 i++ 实现每行处理的计数 当前处理行数*100再除以文件行数+%得到我要输出的百分比结果 我需要在一
MFC 用进度条在状态栏显示某个按钮响应函数的过程,并用多线程实时更新
因为写的一个按钮的响应函数在数据量大的情况下会出现未响应的情况,所以为了让人直观的可以觉得程序仍然还在运行,并实时显示函数的运行状态。 (1)首先MFC工程中新建一个类,这个类不是MFC类而是Generic Class,在类视图下,添加一个新类,并选择Generic Class,将这个类命名为CProgressStatusBar, 设置其基类为CStatusBar (2)在资源视图,
Android UI组件进阶(1)——带进度条的按钮
Android UI组件进阶(1)——带进度条的按钮 本节引言: 这个系列是继Android UI组件实例大全后的进阶系列,在该系列中我们将进一步的学习 Android UI组件,建议阅读本系列前线学习下UI组件实例大全系列,掌握基本组件的使用; 当然你也可以直接学习本系列!好了,废话不多说,直接开始第一节吧!本节要演示的是: 带进度条的按钮!相信大家在360手机助手到看
安卓开发之自定义带加载进度的按钮ProgressButton
demo按钮效果图:一、定义ProgressButton的自定义属性在attrs文件中定义ProgressButton的基本属性:主要有进度条颜色、进度条的背景颜色、按钮正常和被点击状态时的颜色、按钮的边角半径和是否显示进度信息。<declare-styleable name="progressbutton"> <attr name="progressColor" format="color
带有进度条的Button
好久没更新了,自己自学,一直都感觉很迷茫,但是幸好有xiaohuobanme