Zdravim,
mam dotaz ohledne GUI. Mam vyvorene GUI okno pomoci SWT. Tedka chci udelat automat, ktery v jednom stavu spusti nejake vlakno (bude se asi minutu neco vykonavat) a ceka se na dokonceni toho vlakna
(pomoci while). Problem je, ze dokud to vlakno bezi, tak GUI vytuhne, resp. je busy dokud
, 2008 3:08 PM
To: Java konference
Subject: Busy GUI
Zdravim,
mam dotaz ohledne GUI. Mam vyvorene GUI okno pomoci SWT.
Tedka chci udelat automat, ktery v jednom stavu spusti nejake
vlakno (bude se asi minutu neco vykonavat) a ceka se na
dokonceni toho vlakna
(pomoci while). Problem je
PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Martin Jedlicka
Sent: Monday, January 07, 2008 3:08 PM
To: Java konference
Subject: Busy GUI
Zdravim,
mam dotaz ohledne GUI. Mam vyvorene GUI okno pomoci SWT.
Tedka chci udelat automat, ktery v jednom stavu spusti nejake
vlakno (bude se asi minutu
Zdravim,
skusal som cosi guglovat http://www.google.sk/search?q=swt+threads a
toto by Vam mozno mohlo pomoct
http://www.java2s.com/Code/Java/SWT-JFace-Eclipse/IllustratesmultithreadUIprogrammingissues.htm
(neskusal som), google toho nasiel viac, snad nieco pomoze :-)
S pozdravom
ya
Martin
Toto je podobne
http://www.java2s.com/Tutorial/Java/0280__SWT/SWTTimeConsumingOperationUIPattern.htm
Malo by tam ist o toto:
Thread operationThread = new Thread() {
public void run() {
// time-consuming operations
display.asyncExec/syncExec(new Runnable() {
Diky za vse, ale tak nejak chapu. Problem je v tom, ze potrebuju, aby ten
automat nepokracoval dal dokud neskonci to vlakno...jenze, jak testovat beh
toho vlakna, aniz by tuhlo GUI?
M.
Ján Valkovič napsal(a):
Toto je podobne
Subject: Re: Busy GUI
To vim, ale ja to mam delane pod SWT a tam nevim...
Martin
Podlesak Kamil napsal(a):
Swing celý běží v jednom vlákně (event dispatch thread),
všechny časově náročné operace je nutné dělat v jiném. A
naopak, z jiných vláken se nesmí přistupovat k swingovským
Napriklad:
1) spustit akciu na pozadi
2) zobrazit modalny dialog, ktory uzivatelovi nedovoli nic robit
3) ked akcia na pozadi skonci, dialog zatvori
(treba povedat, ze nie je velmi slusne voci uzivatelovi zobrazit
modalny dialog s ktorym sa neda nic urobit)
Alternativne mozete zakazat interakciu
so SWT som este nerobil, takze
viac Vam asi nepomozem. Ak to vlakno dokazete spustit paralelne, mozno
by ste mohli na konci toho casovo narocneho vlakna zobrazit label s
napisom "Done" a ak sa da, tak zavesit na jeho event show najaku
metodu, ktora urobi, co potrebujete. Ale, ako som uz pisal,