Mi sono trovato nella necessità di dover chiamare direttamente uno slot. Penso che sia perfetto farlo finché ha senso nel tuo progetto. Cosa ne pensi?In Qt (4.6), è giusto chiamare direttamente gli slot?
Grazie
Mi sono trovato nella necessità di dover chiamare direttamente uno slot. Penso che sia perfetto farlo finché ha senso nel tuo progetto. Cosa ne pensi?In Qt (4.6), è giusto chiamare direttamente gli slot?
Grazie
Sì .. Slot sono solo normali funzioni e li si può chiamare direttamente ..
Da docs,
Uno slot è chiamato quando è collegato un segnale ad esso viene emesso. Gli slot sono normali funzioni C++ e possono essere chiamati normalmente; la loro unica caratteristica speciale è che i segnali possono essere collegati a loro.
Ecco perché mi piace una buona documentazione: esplicita e semplice. – Klaim
So che possono essere chiamati normalmente. Ho letto anche la documentazione. Ma la domanda è più un progetto che una domanda C++. – Daniel
Il problema è il multithreading. Se si richiama direttamente uno slot, il thread in esecuzione potrebbe essere diverso dall'esecuzione si sarebbe utilizzato connect() (se l'oggetto dello slot è stato spostato in precedenza su un altro thread). Vedi anche http://stackoverflow.com/questions/1144240/qt-how-to-call-slot-from-custom-c-code-running-in-a-different-thread – Trilarion