У меня есть JFrame
с индикатором выполнения и моим кодом, который должен запускать его в фоновом режиме, показывая ход выполнения.MultiThreading в java, я хочу, чтобы и UI, и код выполнялись параллельно
Я реализовал runnable в своем классе Progressbar и начал поток. Но рамка индикатора выполнения не отображается полностью .. и она застревает, и она отображается полностью после того, как мой код полностью выполнен. После завершения основного потока.
Я знаю, что это некоторая основная ошибка.
public class ProgressScriptUI extends JFrame implements Runnable{
@Override
public void run() {
// TODO Auto-generated method stub
setTitle("Progressing to Generate DDL Scripts");
setBounds(400, 250, 850, 400);
getContentPane().setLayout(null);
JProgressBar progressBar= new JProgressBar(0,100);
progressBar.setBounds(200, 100, 500, 20);
add(progressBar);
setVisible(true);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}
//I am calling the below code in some other class
ProgressScriptUI progress = new ProgressScriptUI();
Thread uiThread = new Thread(progress);
uiThread.start();
oracleValidateOLDorNEW.execute(); //Code that I need to call in back ground
показать нам код. – Manish
общественного класса ProgressScriptUI расширяет JFrame реализует Runnable { \t \t @Override \t общественности недействительным запуска() { \t \t // TODO Auto-сгенерированный метод STUB \t \t SETTITLE ("прогрессирующих для генерации DDL скриптов"); \t \t setBounds (400, 250, 850, 400); \t \t getContentPane(). SetLayout (null); \t \t JProgressBar progressBar = новый JProgressBar (0,100); \t \t progressBar.setBounds (200, 100, 500, 20); \t \t добавить (progressBar); \t \t setVisible (true); \t \t \t \t setVisible (true); \t \t setDefaultCloseOperation (EXIT_ON_CLOSE); \t} \t \t } –
Вы можете отредактировать свое сообщение и вставить код там – sanbhat