private class PbThread extends Thread implements Runnable { long percent; int i; final int FULL_READ = 100; public void run() { percent = onetimepad.getMessage().length()/FULL_READ; i = 0; progressBar.setStringPainted(true); do { if(onetimepad.getKeyLength() <= percent) try { this.sleep(10); } catch(InterruptedException e) {} else progressBar.setValue(++i); percent += onetimepad.getMessage().length()/FULL_READ; } while(i < FULL_READ); } }