Geachte Lezer,
Met mijn programma wil ik een lijst van bestanden inlezen. Tijdens het lezen wil ik een progressbar de voortgang van dat bestand laten zien. Dat is me gelukt na veel geklooi. Maar een nadeel van mijn oplossing (thread) is dat hij nu alle files tegelijkertijd inleest en ik dus bij 100 files 100-popupjes met progressbars krijg.
Na ongeveer heel GoT en Google News Archive te hebben doorgelezen ben ik er wel achter dat ik zoiets moet oplossen met een wait en notify. Maar ik kom er gewoon niet uit.
Ik wil dus graag dat die forloop dus pas weer verdergaat als hij klaar is met 'thread'.
Ik ben er nu al een uur of wat mee bezig en het lukt me gewoon niet. Misschien dat die SwingWorker roet in het eten gooit...
Kan iemand mij hiermee helpen?
Met mijn programma wil ik een lijst van bestanden inlezen. Tijdens het lezen wil ik een progressbar de voortgang van dat bestand laten zien. Dat is me gelukt na veel geklooi. Maar een nadeel van mijn oplossing (thread) is dat hij nu alle files tegelijkertijd inleest en ik dus bij 100 files 100-popupjes met progressbars krijg.
Na ongeveer heel GoT en Google News Archive te hebben doorgelezen ben ik er wel achter dat ik zoiets moet oplossen met een wait en notify. Maar ik kom er gewoon niet uit.
Ik wil dus graag dat die forloop dus pas weer verdergaat als hij klaar is met 'thread'.
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| for ( int i = 0 ; i < strFilesDirs.length ; i ++ ) { String bestandsnaam = strFilesDirs[i].getAbsoluteFile().toString(); // DocumentParser = Runnable final DocumentParser document = new DocumentParser(bestandsnaam); final Thread thread = new Thread(document); // Dit heb ik gedaan om die progressbar aan de gang te krijgen final SwingWorker worker = new SwingWorker(){ public Object construct() { thread.start(); return null; } }; worker.start(); } |
Ik ben er nu al een uur of wat mee bezig en het lukt me gewoon niet. Misschien dat die SwingWorker roet in het eten gooit...
Kan iemand mij hiermee helpen?