item liste mit liste also item

Alles rund um die Programmierung mit Qt
Antworten
anti-freak
Beiträge: 18
Registriert: 21. Juli 2012 22:54

item liste mit liste also item

Beitrag von anti-freak » 6. November 2012 11:00

hallo,

ich habe folgendes problem:
ich habe ein qlistwidget in dem ich mehrere qlistwidgetitem dynamisch darstellen möchte. soweit kein problem. allerdings möchte ich auch unter listen haben. d.h. das ein item selbst auch ein qlistwidget sein kann, in dem wiederrum auch beliebig viele qlistwidgetitem haben möchte. letzteres item soll wiederrum ebenso ein qlistwidget sein ;)
ich denke man versteht, worauf ich hinaus möchte.
das zu programmieren ist nicht weiter schwer, nur bereitet mir die darstellung ein wenig kopfzerbrechen.
ich habe 2 ansätze.
einmal erbt eine klasse von qlistwidget und qlistwidget item. klappt soweit auch gut, nur das die größe von meinem item nicht passt. d.h. die höhe des items ist statisch, und ich bekomme leider auch nicht anhand meiner items heraus, wie groß das item letztendlich wirklich sein soll, was einige darstellungsfehler mit sich bringt.
der 2. ansatz war ein qitemdelegate. die höhe passt soweit schon, nur bekomm ich den inhalt nicht angezeigt.
letztendlich wird einfach nur eine leere fläche angezeigt.
2. problem ist, das wenn ich in die liste ein item vor das delegierte item pushe, das ein anderes item die zuständigkeit für mein qitemdelegate übernimmt, sodass sich mein qitemdelegate nicht verschiebt, sondern an seiner ursprünglichen position bleibt.

letztendlich sieht mein draw code so aus.

Code: Alles auswählen

void Container::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
{
    QStyleOptionQ3ListView t_ListViewOption;
    t_ListViewOption.state = QStyle::State_Enabled;
    t_ListViewOption.rect = option.rect;
    t_ListViewOption.fontMetrics = QApplication::fontMetrics();

    QApplication::style()->drawComplexControl(QStyle::CC_CustomBase, &t_ListViewOption, painter, m_pListWidget);
hat da jemand erfahrung mit?

franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Re: item liste mit liste also item

Beitrag von franzf » 6. November 2012 11:24

Nimm doch einfach QTreeWidget.

anti-freak
Beiträge: 18
Registriert: 21. Juli 2012 22:54

Re: item liste mit liste also item

Beitrag von anti-freak » 6. November 2012 22:26

ok, danke für den tipp

Antworten