W automatycznie generowanym kodzie przy tworzeniu aplikacji za pomocą wspomnianego w temacie szablonu znajduje się propertyChangeListener. Mniej więcej takie coś:
// connecting action tasks to status bar via TaskMonitor
TaskMonitor taskMonitor = new TaskMonitor(getApplication().getContext());
taskMonitor.addPropertyChangeListener(new java.beans.PropertyChangeListener() {
public void propertyChange(java.beans.PropertyChangeEvent evt) {
String propertyName = evt.getPropertyName();
if ("started".equals(propertyName)) {
if (!busyIconTimer.isRunning()) {
statusAnimationLabel.setIcon(busyIcons[0]);
busyIconIndex = 0;
busyIconTimer.start();
}
progressBar.setVisible(true);
progressBar.setIndeterminate(true);
} else if ("done".equals(propertyName)) {
busyIconTimer.stop();
statusAnimationLabel.setIcon(idleIcon);
progressBar.setVisible(false);
progressBar.setValue(0);
} else if ("message".equals(propertyName)) {
String text = (String)(evt.getNewValue());
statusMessageLabel.setText((text == null) ? "" : text);
messageTimer.restart();
} else if ("progress".equals(propertyName)) {
int value = (Integer)(evt.getNewValue());
progressBar.setVisible(true);
progressBar.setIndeterminate(false);
progressBar.setValue(value);
}
}
});
Jak "sprowokować" te zdarzenia? Tzn chcę, aby pokazał się ProgressBar, ikonka się animowała, postęp był zgodny z zadanym przeze mnie postępem i żeby się to schowało kiedy ja chcę. Jak to wykonać? Wujka G już zamęczałem pytaniami i nic konkretnego nie znalazłem.
PS: Mowa o NetBeans IDE oczywiście.