On Nov 20, 2012, at 11:44 AM, Brian Knudson wrote: >> >>> Here's some example code (pardon the length). I would like to be able >> to >>> print the listed files/urls from the function "lister". Ultimately, I'd >>> like to then have that function formulate new urls & pass them back to >>> connectAndDownload to download each of the files (of course, this will >>> require modifications to connectAndDownload, but we're not there yet). >> >> Why use threads at all? QFtp is asynchronous and won't block. If you need >> to do some blocking processing of the results then create threads for that. >> > > Hmm. Good point. I've tested this again in the main thread & it works as > expected. > > FWIW, I had already written the threaded ftp for multiple ftp streams & was > trying to reuse it for this purpose (hence the threads). Assuming this is a > Qt bug, I'll happily skip the threaded bit & move back to the main thread. >
I may have spoken too soon. While this works fine in my example script, when I put it in a QWizardPage, it doesn't run. I suspect this has something to do with the event loop thinking it has completed (or hasn't started?) For grins, I created a thread that does nothing but wait. It waits on the ftp list command to finish, then it finishes. I then start the thread, then wait on it. This does not solve the problem, however, as there is still no event loop for the QFtp, so it does nothing. Clearly, I don't understand how event loops work with QWizardPage and QFtp. The goal: When a user lands on the given qwizard page, several small text files are downloaded from ftp & the contents of those files are used to drive the rest of the wizard. I would like for the files to be downloaded as part of initializePage & the UI built around the results. Is this possible? Currently, I see the ftp commands being queued up, but none ever run... *unless* there's a problem on the page & I get an exception/traceback (which I suspect does something to the event loop), in which case ftp works as I expect it would - directory listed, filenames printed, etc. No exception/traceback: no ftp commands completed. Exception/traceback: all ftp commands complete. To be concise: How do you get a QFtp to run commands in a QWizardPage w/o a button click? Thanks, -Brian _______________________________________________ PyQt mailing list PyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt