Seite 1 von 1

QTextEdit in Zelle von QTableWidget

Verfasst: Montag 24. Februar 2014, 09:20
von Fladdie
Hallo,

bin neu hier im Forum.
Ich bin noch nicht sonderlich fit mit Python und erst recht nicht mit PyQt. Daher meine Frage:

Ich habe ein QTableWidget. In diesem lasse ich in einer Zelle ein QTextEdit item erstellen.
Ich möchte nun gerne für das QTextEdit item das Siganal connecten sodass bei Änderung des Inhalts + bei Verlassen des Items eine Funktion getriggert wird (OnTextChange).

Mein Code zum Erstellen des QTextEdit items:

Code: Alles auswählen

        text = QtGui.QTableWidgetItem()
        self.tabelle.setItem(1, 7, text)
        self.tabelle.setCellWidget(1, 7, QtGui.QTextEdit())
Habe schon länger rumprobiert bekomme es aber nicht hin.
Würde mich sehr über eure Hilfe freuen.

Gruß
Eric

Re: QTextEdit in Zelle von QTableWidget

Verfasst: Montag 24. Februar 2014, 10:56
von Madmartigan
Hallo und willkommen.

Wenn du dir anschaust, wie du dein QTextEdit generierst, fällt dir auf, dass zwar eine Instanz korrekt erstellt wird, diese aber nicht außerhalb des Aufrufs referenzierbar ist.
Statt

Code: Alles auswählen

self.tabelle.setCellWidget(1, 7, QtGui.QTextEdit())
mache folgendes:

Code: Alles auswählen

self.input_field = QtGui.QTextEdit(self)
self.tabelle.setCellWidget(1, 7, self.input_field)
Damit kannst du das Signal

Code: Alles auswählen

self.input_field.textChanged
ansprechen.

Re: QTextEdit in Zelle von QTableWidget

Verfasst: Montag 24. Februar 2014, 11:43
von Fladdie
Hi Madmartigan,

super! Vielen Dank hat mich schon mal wieder ein ganzes Stück weitergebracht!

Gruß
Eric