[ rapidlord @ 16.09.2004. 13:39 ] @
| Radi se o tome da imam VELIKO izracunavanje koje treba da se startuje automatski po pokretanju dijaloga i ciji napredak se prikazuje na progres baru u tom dijalogu, e sad kad tu funkciju stavim u InitDialog() dijalog normalno nece da se prikaze dok se ta funkcija ne izvrsi sto monogo traje a i samim tim progres bar koji se nalazi u dijalogu nema funkciju. Koja je standardna procedura za takav slucaj, dali se pravi neki tajmer koji pozove tu funkciju za neki interval kad se izvrsi InitDialog() ili postoji neka funkcija koja se poziva posle InitDialog() funkcije? |
[ Dragi Tata @ 16.09.2004. 13:49 ] @
Jedan način je da startuješ posebnu nit u kojoj ćeš da vršiš taj veliki proračun.
Drugi način je da iz samog proračuna pozivaš neku funkciju koja će da iscrtava progress bar.
[ rapidlord @ 16.09.2004. 13:56 ] @
Citat:
Drugi način je da iz samog proračuna pozivaš neku funkciju koja će da iscrtava progress bar.
Na cemu? kad dialog koji nosi progres bar jos nije napravljen jer InitDialog() nije izvrsen do kraja zbog te funkcije???
[ Dragi Tata @ 16.09.2004. 14:15 ] @
Pa je li mora u InitDialog? Čini mi se da može recimo OnActivate.
[ milanche @ 16.09.2004. 15:54 ] @
Postoji nesto sto se zove GUI Thread. Pustis lepo da se OnInitDialog zavrsi, a pre samog
zavrsetka startujes GUI thread na kojem prikazujes progres izracunavanja (i obavezni
Cancel button za nestrpljive), kao i worker thread koji ce da izracunava sto treba.
Obicno worker thread samo racuna, a crtacke funkcije sme da poziva samo preko
poruka koje salje glavnom thread-u, nikako direktno jer je crash neizbezan.
[ sjanos @ 12.10.2004. 13:55 ] @
Citat:
rapidlord: Radi se o tome da imam VELIKO izracunavanje koje treba da se startuje automatski po pokretanju dijaloga i ciji napredak se prikazuje na progres baru u tom dijalogu...,
i ja radim na slicnom programu imam slican problem pa bi me interesovalo da li si i kako resio problem
[ rapidlord @ 22.10.2004. 10:15 ] @
Resio sam problem tako sto sam startovao nit u kojoj se vrsi izracunavanje, kao sto su mi preporucili Dragi Tata i Milanche.
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.