作者H45 (!H45)
看板java
标题Re: [问题] JProgressBar延迟
时间Mon Sep 25 22:08:31 2006
※ 引述《HiEArO (xsd)》之铭言:
: 我想问有关於JProgressBar的相关问题
: // 以下是测试档
: 程式的执行是这样子的 执行後 出现一个视窗 视窗上面有一个按扭
: 当按下後 则会进行资料库的相关处理 如黄色注解那边所示
: 而在进行资料库的处理之前 先启动了一个thread来做JProgressBar的运作
: 但是执行後 JProgressBar不会先出来 反倒是按住frame的button画面会先定住
: 然後视窗f会出现 但是JProgressBar不会出现 然後待那些资料库的处理完毕後
: frame.dispose()之後,JProgressBar才出现。
: 我想问的就是 为什麽这个时候JProgressBar才出现呢?
: 有人遇过相关的问题吗?
: 这个方法我是参考JavaWorld的方法,但是还是无法解决
: 网址:
: http://www.javaworld.com.tw/jute/post/view?bid=5&id=69415&sty=3&age=0&tpg=1&ppg=1#69415
: 若我问的不好 请见谅
原因:
AWT-Thread 呼叫 actionPerformed
另外,AWT-Thread 负责 repaint components
而 database 的处理时间特别长
所以才出现 JProgressBar 迟滞过久的问题
解决之道:
把 database 的处理也创一个 thread 来执行
尽快使 AWT-Thread 离开 actionPerformed method
才可以 repaint components
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.115.205.85