As far as it is concerned with this particular post, I solve my own problem using single shots. let's say you need to execute a slot two seconds after:

QTimer::singleshot(2000, this, SLOT(slotname()));

I used singleshot inside most of my objects in a project. if you still have problems with it, I can check it out for further details.

and, singleshot or your QTimer.start do not delay the execution of the instruction below them. each timers as soon as called, will be run as a seperate thread. it's like a parent process creating a child of his own using fork() in c.