ich habe gerade herausgefunden, das dies ein Problem mit dem quellcode ist den ich ausführe, denn mit Thread.sleep(400) geht es bei mir auch. Das ist mein Quellcode den ich ausführe:
[code=Java]Cube cube = null;
for (GridElement currentElement : gridElements) {
if (currentElement instanceof Grid2DElement) {
Grid2DElement elem = (Grid2DElement) currentElement;
Vertex coords = elem.getCoordinates();
if (cube == null) {
cube = new Cube();
cube.setName(name);
cube.setHeight(height);
cube.setWidth(elem.getWidth());
cube.setDepth(elem.getHeight());
cube.setAmbient(1f, 1f, 1f);
cube.setX(coords.x);
cube.setZ(coords.z);
cube.setY(0);
cube.setAngle(0, 0, 0);
} else {
SubCube currentSubCube = new SubCube();
currentSubCube.setParent(cube);
currentSubCube.setHeight(height);
currentSubCube.setWidth(elem.getWidth());
currentSubCube.setDepth(elem.getHeight());
currentSubCube.setAmbient(1f, 1f, 1f);
currentSubCube.setX(coords.x);
currentSubCube.setZ(coords.z);
currentSubCube.setY(0);
currentSubCube.setAngle(0, 0, 0);
cube.addSubcube(currentSubCube);
}
}
if (++currentElementCount % 50 == 0 || currentElementCount >= totalElementCount) {
Thread.sleep(100);
int currentProgress = (int) ((double) currentElementCount / (double) totalElementCount * 100);
System.out.println("setProgress " + currentProgress);
setProgress(currentProgress);
}
}[/code]
sobald ich folgendes auskommentiere, funktioniert es wunderbar und der PropertyChangeListener wird aufgerufen :
[code=Java]if (cube == null) {
cube = new Cube();
cube.setName(name);
....
} else {
SubCube currentSubCube = new SubCube();
currentSubCube.setParent(cube);
currentSubCube.setHeight(height);
....
cube.addSubcube(currentSubCube);
}[/code]