2010-10-13 4 views

Répondre

37

Oui .. Machines à sous sont juste fonctions normales et vous pouvez les appeler directement ..

De docs,

Une fente est appelée lorsqu'un signal connecté à lui est émis. Les emplacements sont des fonctions C++ normales et peuvent être appelés normalement; leur seule particularité est que les signaux peuvent être connectés à eux.

+4

C'est pourquoi j'aime la bonne documentation: explicite et simple. – Klaim

+0

Je sais qu'ils peuvent être appelés normalement. J'ai lu la documentation aussi. Mais la question est plus un design qu'une question C++. – Daniel

+6

Le problème est multithreading. Si vous appelez un slot directement le thread en cours d'exécution pourrait être différent de l'exécution, vous auriez utilisé connect() (si l'objet du slot a été déplacé vers un autre thread avant). Voir aussi http://stackoverflow.com/questions/1144240/qt-how-to-call-slot-from-custom-c-code-running-in-a-different-thread – Trilarion

Questions connexes