javafx-更新ui使用多线程

更新UI线程

在javafx中,线程分为Task,service,和Runable,

thread是java中的线程,不能直接用于javafx中,javafx的线程就剩下了task和service。

task是继承自Runable的类,这个线程是一次性的线程,启动,执行完毕,回收,一次执行完成即结束,如果在需要重复使用的线程,就不能使用这个。

service 是爹类,,实现了Worker接口,在service中,线程可以启动,暂停,可重复使用,

当更新ui时,界面卡住无响应,可以参考如下方法尝试:
方法一:

loading=new Thread(()->{
   

                Platform.runLater(()->{
   
                    detail.setText("loding .gz file success"+"\n");
                    filename.setText("文件名:" + file.getName());
                    filepath.setText("文件位置:" + file.getAbsolutePath());
                    filesize.setText("文件大小:" + (file.length() / 1024) / 1024 + "M");
                    // detail.setText(unCompressUtils.progressText);

                    processor.setVisible(true);
                    cancelbutton.setDisable(false);

                });

                try {
   
                    unCompressUtils.unOne(file.getAbsolutePath());
                } catch (InterruptedException e) {
   
                    e.printStackTrace();
                }<
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值