@yaem: Bitte achte auf die korrekte Einrückung, und zeige
lauffähige Beispiele.
Das Signal "cellClicked()" wird deswegen nicht ausgelöst, weil es dieses Signal gar nicht gibt. Du suchst
cellClicked(int, int). Die Argumente von Signalen sind Bestandteil des Signal-Namens und können keinesfalls weggelassen werden. Mithin sind "cellClicked()" und "cellClicked(int, int)"
nicht dasselbe!
Verwende die neue Signal-Slot-API, also "self.ui.table.cellClicked.connect(self.cell_activated)", um solche Fehler von vorne herein auszuschließen. Bei dieser API wird automatisch eine Standard-Überladung des Signals ausgewählt, wenn man keine Argumenttypen angibt. Gibt es nur eine Überladung des Signals (wie in diesem Fall), wird natürlich diese ausgewählt. "self.ui.cellClicked" ist also äquivalent zu "self.ui.cellClicked[int, int]", was wiederum äquivalent zu "SIGNAL('cellClicked(int, int)')" ist (aber eben
nicht zu "SIGNAL('cellClicked()')"!).
Außerdem löst die neue API Ausnahmen aus, wenn Du versuchst, zu nicht-existierenden Signalen oder nicht-existierenden Überladungen eines Signals zu verbinden. Das erleichtert die Fehlersuche, weil sich das Programm nicht einfach stillschweigend falsch verhält (so wie in diesem Fall).