Seite 1 von 1

QTableWidget erweitern / Signal connecten

Verfasst: Montag 29. Mai 2017, 20:55
von H4lunkE
Hallo,

ich arbeite mich gerade in PyQT5 ein.
Für mein Projekt möchte ich entsprechend ein QTableWidget erweitern. Dazu habe ich mir die Klasse QTableWidgetN geschrieben, die vom QTableWidget erbt. Diese kann ich nun um Instanzvariablen erweitern, das bringt mich schon voran.

Nun würde ich aber gerne, sobald das Signal "cellChanged" ausgelöst wird, eine Methode innerhalb der Subclass ausführen.
Nur leider wird das Signal scheinbar nicht verbunden, denn mein cellchange wird nicht ausgeführt.
Auch PyCharm weist mich darauf hin --> "Cannot find reference 'connect' in 'function'

Kann ich denn das Signal nur außerhalb verbinden, also wenn ich die Klasse instanziere?
Gibt es alternative Wege das innerhalb der Klasse zu lösen? Ich möchte ja prinzipiell nur cellchange ausführen, wenn sich etwas ändert.

Hier mein Code:

Code: Alles auswählen

# -*- coding: utf-8 -*-

from PyQt5.QtWidgets import QTableWidget


class QTableWidgetN(QTableWidget):

    def __init__(self, args=None):

        QTableWidget.__init__(self, args)
        self.cellChanged.connect(self.cellchange)

    def cellchange(self, row, column):
        print('cell changed!')
Danke schonmal für eure Hilfe.

Re: QTableWidget erweitern / Signal connecten

Verfasst: Montag 29. Mai 2017, 22:45
von BlackJack
@H4lunkE: Gibt es bei dem Beispiel denn überhaupt Zellen? Du sagst ja nirgends wie wie viele Spalten und Zeilen es geben soll. Schreib doch mal ein komplettes Beispiel das man auch ausführen kann.