D. Sun, 8 Jul 2001 15:43:46 +0200 syntes "Soren Kuula" <s_kuula@yahoo.com>
at dk.edb.programmering.java skulle vide at
<LqZ17.128$qm6.2090@news.get2net.dk>.
>Jeg har en applet med en noget sn?rklet metode, der opbygger et billed (af
>en graf).
>Nu vil jeg have en button med i applet'en, s? jeg kan se opbygningen af
>grafen skridt for skridt, ved at inds?tte 'noget' (et wait, m?ske) der
>standser graf-metoden efter hver del af grafen er tegnet, og noget andet i
>actionListeneren for knappen, der tillader graf-metode at forts?tte til
>n?ste wait.
>
>Men jeg har helt glemt hvordan det kan g?res .. f?r jeg brug for at starte
>en thread mere ?
>Har nogen et simpelt forslag ?
Hvis hvert skridt tager nogle sek, vil en tråd være en god idé, for at
undgå at brugerfladen fryser under beregningerne. Ellers vil jeg mene at du
godt kan klare dig uden en ekstra tråd.
Vælger du ikke at lave en ny tråd, kan du bruge wait() til at få den til at
holde pause, og du kan så sætte den igang igen med notifyAll(). Begge er
nedarvet fra Object, så du kan bare bruge dem. Det er denne metode du skal
bruge, hvis man skal trykke på en knap for at fortsætte.
Du kan også benytte static void sleep(long soveTidIMillisek) fra Thread, så
du skriver Thread.sleep(1000); for at holde en pause på 1 sek. Så skal du
bare huske at importerer java.lang.Thread .
Nu ved jeg ikke hvor meget du går op i at adskille GUI og selve programmet,
men hvis du laver en ekstra tråd, og vil gøre det "rigtigt", skal du nok
lave et interface eller to (til kommunikation mellem hovedprogrammet og
tråden), men hvis det skal gøres hurtigt, laver du en tråd ved at nedarve
Thread, og den kode der skal køres, skal du skrive i en metode der hedder
public void run() - selve tråden starter du ved at kalde
objektnavn.start(), som jo er nedarvet fra Thread.
Kommunikationen mellem de to sker som sagt bedst IMHO ved hjælp af
interfaces, hvor laver noget med et observer-mønster, men hvis det ikke er
et større projekt du har gang i (som andre ikke skal vedligeholde eller
genbruge dele fra senere), kan du nok godt klare dig uden en ekstra tråd
--
Mvh. Simon Mikkelsen, ingeniørstuderende
www.zipstat.dk Gratis, reklamefri tæller/statistik til enhver hjemmeside
-Se bla. hvor dine besøgende kommer fra, og brug den usynlige tællerkode.