Hallo zusammen,
ich habe heute meinen ersten Thread erstellt und der funktioniert auch soweit.
Folgendes Problem, welches für die meisten Leser wahrscheinlich klar sein wird:
Ich versuche in einem Thread eine Komponente meines Frames zu beeinflussen.
Mir ist bewusst, dass das nicht funktioniert aber ich denke jeder weiß, was ich versuche zu machen wenn er den Code liest.
Wie kann ich eine Variable, in meinem MainFrame "überwachen", mit einem Listner o.ä., sodass ich die Prograssbar während des Prozesses updaten kann?
Komischer Weise funktioniert das Label sogar.
Freue mich über jede Antwort.
PS: Habe schon einiges dazu im Internet gefunden aber komme an dem Punkt nicht weiter. Also wäre eine Situationsbezogene Antwort sehr hilfreich.
ich habe heute meinen ersten Thread erstellt und der funktioniert auch soweit.
Code:
public class MyRunnable implements Runnable
{
public void run()
{
cGuid0 myGuid = new cGuid0();
resetCells();
List<String> guids = new ArrayList<String>();
jLabel1.setText("Creating records");
for(int i = 0; i < data.length-1; i++)
{
guids.add(myGuid.createGuid0());
mySQL.insertQuery("INSERT INTO Words (Guid0) VALUES ('" + guids.get(i) + "')");
jProgressBar1.setValue(Math.round(5 / data.length-1 * (i / 20)));
}
for(int i = 0; i < data[0].length; i++)
{
String row = mySQL.getRecent(data[0][i]).get(0)[0];
jLabel1.setText("Updating -" + row + "- (" + data.length + ") records");
jProgressBar1.setValue(Math.round(5 + (95 / data[0].length * (i / 100/95))));
for(int i2 = 0; i2 < guids.size(); i2++)
{
mySQL.updateQuery("UPDATE Words SET "+ row +"=N'" + data[i2+1][i].replace("'", "''") + "' WHERE Guid0='"+ guids.get(i2) +"'");
}
}
}
}
Folgendes Problem, welches für die meisten Leser wahrscheinlich klar sein wird:
Ich versuche in einem Thread eine Komponente meines Frames zu beeinflussen.
Mir ist bewusst, dass das nicht funktioniert aber ich denke jeder weiß, was ich versuche zu machen wenn er den Code liest.
Wie kann ich eine Variable, in meinem MainFrame "überwachen", mit einem Listner o.ä., sodass ich die Prograssbar während des Prozesses updaten kann?
Komischer Weise funktioniert das Label sogar.
Freue mich über jede Antwort.
PS: Habe schon einiges dazu im Internet gefunden aber komme an dem Punkt nicht weiter. Also wäre eine Situationsbezogene Antwort sehr hilfreich.