QCombobox in QTableWidget[gelöst]

Alles rund um die Programmierung mit Qt
Antworten
jasper
Beiträge: 60
Registriert: 3. Februar 2009 11:36
Wohnort: Hamburg

QCombobox in QTableWidget[gelöst]

Beitrag von jasper »

Hallo Forum,
ich verwende das QTableWidget mit den Komponenten
QTableWidgetItem und QCombobox. Die QTableWidgetItem's
weise ich mit der Methode setItem zu, die QCombobox'en mit
der Methode setCellWidget. So entsteht ein Grid mit mehreren
Texteldern (QTableWidgetItem) und Auswahlboxen (QCombobox).

Mein Problem:
Wie kann ich feststellen welche QCombobox gerade den Fokus hat?
Hat ein QTableWidgetItem den Fokus, so kann ich dies über die Methode
QTableWidget ->currentRow() erfragen. Bei den Feldern mit der QCombobox
funktioniert das nicht.
Kann mir jemand helfen?

Ich verwende QT-4.6.3.
Zuletzt geändert von jasper am 1. Dezember 2011 17:23, insgesamt 1-mal geändert.
jasper
Beiträge: 60
Registriert: 3. Februar 2009 11:36
Wohnort: Hamburg

Re: QCombobox in QTableWidget

Beitrag von jasper »

...nun habe ich die Lösung selber gefunden, auch wenn sie nicht sehr schön ist:

- jede QComBoBox bekommt über setObjectName("Name"+Nr) einen eindeutigen Namen
vor der Zuweisung QTablesWidget->setCellWidget(..).
- alle QComboBox'en bekommen ein und denselben slot
- in diesem slot kann man nun mit der Methode
QTabletWidget->focusWidget()->objectName() die entsprechende
QComboVox erkennen und mit der Nr. im Namen auch die Zeilennummer

Geht das auch eleganter?
Antworten