java - Swing worker override process <T,V> -


i'm trying override process() method ensure code runs in edt. have made sure <t,v> matching throughout still won't let me override. here code:

final swingworker<arraylist<block>,integer[]> swingslavelabourer = new swingworker<arraylist<block>, integer[]>() {      @override      protected arraylist<block> doinbackground() throws exception {         blocklist.doheavywork()..         integer [] status = new integer[2];         status[0] = 1;         status[1] = 0;         this.process(status);         return blocklist;     }      @override //wont allow override     protected void process (integer[] chunks){         progressbar.setvalue(chunks[0]);     } }; 

the process method takes list<v> argument. represents data chunks published. need change code to:

@override protected void process(list<integer[]> chunks) {     // } 

you should not call directly process doinbackground method. instead, should call publish publish each chunk of data.

refer following example taken swingworker javadoc:

class primenumberstask extends swingworker<list<integer>, integer> {       primenumberstask(jtextarea textarea, int numberstofind) {          //initialize      }       @override      public list<integer> doinbackground() {          while (! enough && ! iscancelled()) {                  number = nextprimenumber();                  publish(number); // each computed number published                  setprogress(100 * numbers.size() / numberstofind); // , progress updated              }          }          return numbers;      }       @override      protected void process(list<integer> chunks) {          // in mean while, print each published value textarea          (int number : chunks) {              textarea.append(number + "\n");          }      }  } 

Comments

Popular posts from this blog

1111. appearing after print sequence - php -

java - WARN : org.springframework.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/board/] in DispatcherServlet with name 'appServlet' -

Ruby on Rails, ActiveRecord, Postgres, UTF-8 and ASCII-8BIT encodings -