[clug] long run function in trolltech qt widget
jeffm at ghostgun.com
Wed Dec 3 22:50:11 GMT 2008
Brad Hards wrote:
> The normal approach would be to connect the accepted() signal to a custom slot
> that executes long_run().
> However to show any GUI stuff changing, you need to return to the event loop.
> How is long_run() returning control to the event loop? Are you dividing up
> the run into multiple steps, or are using some kind of threading approach?
I have code similar to,
setTitle(tr("Do the work"));
progress = new QProgressBar(this);
extern "C" void callback(void *arg)
QProgressBar *bar = (QProgressBar *)arg;
bar->setValue(bar->value() + 1);
result = long_run(callback, (void *) progress)
// To be done
doWork() doesn't return until it's actually finished the calculation.
There isn't a contiuation unfortunately. How do I call doWork() so that
MyPage is displayed while the work is being done? I've been trying to
avoid a thread for this as it only meant to be a prototype at this stage
and QThread looks as if it will take a while to understand. Especially
getting values in and out of threads.
More information about the linux