Seite 1 von 1

QListWidget, Model, View - Üble Optik & Vertändnisprobl

Verfasst: 5. November 2005 16:46
von piet
Tag, zusammen !

Hier im Forum habe ich auf die Schnelle keine Frage
entdeckt, die etwa meinem Problem entspricht.


QListWidget (Icons) - ich habe viele abgeleitete Items,
die ich hier einfüge, funkioniert und ist schnell, allerdings
sieht das Ganze wie Kraut und Rüben aus, wenn Items
dabei sind, die eine recht lange Beschriftung haben.

Versprochen: Ich hab' echt versucht, das Ding mit Model,
View und Index zu kapieren - aber erfolglos.

Weder in ItemModels noch in QModelIndex, Delegates
oder sonstwo.

-> Kann mir jemand sagen, wie ich die Items in mein
persönliches Gitter zwinge ? (setGridSize oder setSpacing
bringen hier gar nix)

-> Falls dafür Klassen abgeleitet werden sollen, wo ich anfangen
soll ? Welche Klasse kann mir das Gitter "liefern" ?



Für jeden kleinen Tip dankbar,

Pietchen

Verfasst: 5. November 2005 19:27
von klogg
Du hast dann hoffentlich diesen Teil der Dokumentation gelesen:
http://doc.trolltech.com/4.0/model-view ... mming.html

Wenn du dir mal den Code und die Beschreibungen (ist echt nicht viel)
von diesem Tutorial anguckst:
http://doc.trolltech.com/4.0/itemviews- ... model.html
dann sollte dir eigentlich klar sein, wie man selbst eine Model-Klasse schreibt und eine View-Klasse benutzt.


Auf deine eigentliche Frage kann ich leider nicht antworten,
da du dich lediglich beschwerst, dass bei dir was nach "Kraut und Rüben" aussieht. :)
Was möchtest du denn genau wissen?

HENNING

Durchgelesen

Verfasst: 6. November 2005 02:11
von piet
Erstmal danke für die Antwort!

Durchgelesen - naja. Mein Englisch ist zwar nicht
der totale Knüller, aber ich habe mich schon halbwegs
reingebissen ;-) :


Habe mich wohl zu verwaschen ausgedrückt:

-> Wenn ich's richtig kapiert habe, muß ich nur einen
QAbstractItemDelegate (oder Nachfolger) selbst
implementieren, wenn ich Icons in einem QListWidget
selbst anordnen will.

"Kraut und Rüben" : Das QListWidget ordnet Icons ziemlich
durcheinander an, wenn ein paar Items dabei sind, die
lange Beschriftungen haben. Daher der Drang, die Items
in ein Gitter zu zwingen.


Wo's jetzt hakt:

Ein QAbstractItemDelegate (und darunter) hat nur eine Methode
"paint(QPainter, const QStyleOptionViewItem &, const QModelIndex &).

Aus dem QModelIndex bekomme ich mit "getInternalPointer()"
(oder so) noch mein Item raus, aber ich müßte dann _alles_
selbst implementieren: Vom Icon zeichnen zum richtigen Text
mit Alignment und allem Pipapo. Seh' ich nicht ein, müßte QT doch
selbst können...


Gruß vom Piet

Verfasst: 6. November 2005 11:16
von Timewarp
Ich kann jetzt leider im Moment nichts zum Problem beisteuern aber mich würde mal interessieren was durcheinander wirklich bedeutet ... wäre es vielleicht möglich hier nen Screenshot mal drann zu hängen ?

Mit screenshot

Verfasst: 6. November 2005 15:01
von piet
Tach.

Hier ein Ausschnitt aus einem qt-include Verzeichnis. Wären die Beschriftungen kurz, stünde hier alles in Reih' und Glied; sind sie länger kommt sowas dabei raus.


(update)


Habe gerade einen testweisen Delegate abgeleitet, ich mußte alles (!) um "paint(...)" herum neu schreiben (auch Drag ging). Daß "paint" const ist, ist obendrein eine Schikane... :evil:

Das Problem besteht weiter : Kann ich mit QT-eigenen Mitteln die Items in ein beliebiges Gitter hineinzwängen ?


Thx schon jetzt,


Piet

Verfasst: 6. November 2005 15:11
von piet
> (auch Drag ging).

Soll heißen (auch Dragging)...