Niksen Harjanto wrote:
> saya udah convert bagian Thread nya jadi pake SwingWorker, tapi tetep
> aja EDT untuk handle YM nya ke tutup...
> Apa karna di dalem thread itu saya kasih looping WHILE ya?
> 
> ini skripnya :
> 
>     private void updateStatus() {
>         Runnable doSetTextLog = new Runnable() {
>             public void run() {
>                 while (Thread.interrupted() == false) {
>                     try {
>                         txtLog.append(new
> ClsConverter().getNow_dd_MMM_yyyy_hh_mm_ss() + " - Dari thread\n");
>                         Thread.sleep(1000);
>                     }
>                     catch (InterruptedException ex) {
>                     }
>                 }
>             }
>         };
>         SwingUtilities.invokeLater(doSetTextLog);
>     }
> 
>     private void doWork() {
>         updateStatus();
>     }
> 
>                 swingWorker = new SwingWorker() {
>                     @Override
>                     protected Object doInBackground() throws Exception {
>                         doWork();
>                         return null;
>                     }
>                 };
>                 swingWorker.run();
> 
> format itu ikutin dari mana ya? wiki gtu? katanya format itu untuk Java 6...
> 
> makasih...
> 
> 

Kalau sudah pakai SwingWorker, harusnya sudah ga perlu lagi donk bikin 
method khusus untuk sinkronisasi ke EDT. Gunakan saja method *publish*, 
*process* dan *done*. Override ketiga method2x tsb kalau ingin 
berkomunikasi dengan EDT.

Dan biasanya method *done* ini djalankan ketika *doInBackground* sudah 
selesai dengan tugas-nya. Nah gmn klo dalam method *doInBackground* kita 
ingin kasih notifikasi ke EDT ? Caranya gunakan method *publish* dan 
*process*.

Kalau ingin penjelasan lebih detail dengan SwingWorker, selain dari link 
yang sudah diberi ama Pak Endy dan mas Ifnu. Saya menggunakan referensi 
dari sini[1] karena ada contoh nyata-nya juga dan *it's work* :D

Klo masih bingung juga, saya juga udah pernah nulis tentang SwingWorker 
dengan contoh yang lebih simple tentu-nya dan dengan bahasa sendiri juga 
  disini[2] :D


[1] http://java.sun.com/developer/technicalArticles/javase/swingworker/
[2] 
http://martinusadyh.web.id/2009/11/07/lebih-dekat-dengan-class-swingworker/

-- 
Regards,

Martinus Ady H.
Registered Linux User #410906
Personal Blog       : http://martinusadyh.web.id/
Planet NetBeans ID  : http://planetnetbeans.org/id/index.html
Planet Slackware ID : http://planet.slackware-id.org/

Kirim email ke