evoleena
Erfahrenes Mitglied
Hallo Leute,
ich würde gerne eine Wartezeit in meine Do..while Schleife einbauen, damit man das repaint(); meines Panels auch sieht, aber leider klappt das nicht wie ich das gerne hätte.
Eigentlich ist die Schleife auch so gebaut,das sich am ende das panel repaintet, aber das sieht man nicht, anscheindend ist die Schleife so schnell durchlaufen, oder er macht es nicht.
Jedenfalls hab ichs jetzt hiermit versucht, aber wie gesagt ohne erfolg
hier auch mal die komplette Schleife
ich würde gerne eine Wartezeit in meine Do..while Schleife einbauen, damit man das repaint(); meines Panels auch sieht, aber leider klappt das nicht wie ich das gerne hätte.
Eigentlich ist die Schleife auch so gebaut,das sich am ende das panel repaintet, aber das sieht man nicht, anscheindend ist die Schleife so schnell durchlaufen, oder er macht es nicht.
Jedenfalls hab ichs jetzt hiermit versucht, aber wie gesagt ohne erfolg
Code:
try{
wait(10000);
}catch (Exception e) {}
hier auch mal die komplette Schleife
Code:
do {
aendern = false;
//Durchlaufe alle Cluster
for (int i = 0; i < Clusters.size(); i++) {
Cluster c = (Cluster) Clusters.get(i);
int xcord = 0, ycord = 0, anzahl = 0;
//Durchlaufe alle Datenpunkte und suche nur die raus, wo das Cluster = ClusterID ist
for (int j = 0; j < Datenpunkte.size(); j++) {
Datenpunkt p = (Datenpunkt) Datenpunkte.get(j);
if (c.getclusterid() == p.getCluster().getclusterid()) {
xcord = xcord + p.getx();
ycord = ycord + p.gety();
anzahl++;
}
}//END for(int j=0; j < Datenpunkte.size(); j++)
try {
//Berechne den Mittelwert
xcord = xcord / anzahl;
ycord = ycord / anzahl;
if (xcord != c.getx()) {
if (ycord != c.gety()) {
c.sety(ycord);
c.setx(xcord);
//repaint();
aendern = true;
} else {
c.setx(xcord);
//repaint();
aendern = true;
}
} else {
if (ycord != c.gety()) {
c.sety(ycord);
//repaint();
aendern = true;
}
}
} catch (ArithmeticException e) {
}//END Try...Catch...
}//END for (int i=0 ; i < Clusters.size();i++)
if (aendern == true) {
iteration = Integer.parseInt(jLabel7.getText()) + 1;
jLabel7.setText(String.valueOf(iteration));
repaint();
try{
wait(10000); // warte eine Secunde ...
}catch (Exception e) {}
clustern();
}
} while (aendern == true);