Podstawowe nieokreślone użycie JProgress Bar
Po prostu chcę mieć animowany JProgressBar w lewym dolnym rogu mojej ramki, gdy trwa długie pobieranie.
Przejrzałem wiele samouczków, z których żaden nie jest dla mnie jasny. Chcę po prostu animować, gdy plik jest pobierany w tle. Za każdym razem, gdy to wypróbowałem, nie animuje paska postępu, dopókipo pobieranie zostało zakończone.
Potrzebuję pomocy, wiedząc, gdzie umieścić moje wywołanie download ().
<code>class MyFunClass extends JFrame { JProgressBar progressBar = new JProgressBar(); public void buttonClicked() { progressBar.setVisible(true); progressBar.setIndeterminate(true); SwingUtilities.invokeLater(new Runnable() { public void run() { progressBar.setIndeterminate(true); progressBar.setVisible(true); // Do I do my download() in here?? }}); // Do download() here??? progressBar.setVisible(false); } } </code>
Z góry dziękuję!
Edytować: Dla tych, którzy mają podobny problem do mnie w przyszłości, jest to podstawowe rozwiązanie podstawowego problemu. To nie jest mój kod dosłownie, ale ogólny szkic. WewnątrzbuttonClicked()
:
<code>public void buttonClicked() { class MyWorker extends SwingWorker(String, Object) { protected String doInBackground() { progressBar.setVisible(true); progressBar.setIndeterminate(true); // Do my downloading code return "Done." } protected void done() { progressBar.setVisible(false) } } new MyWorker().execute(); } </code>