Liste oder Tree mit 2 verschiedenen Spaltenbreiten
-
Hallo,
ich suche etwas, was es anscheinend nicht gibt.
Ich habe eine Liste für die ich eigentlich ein Tree verwenden würde.Aaaaaaa Bbbbb Cc Dd Eeeeeeeeeee Ffffffffffffffffffffffffffffffff
G H I Jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
G H I Jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
G H I Jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
Aaaaaaa Bbbbb Cc Dd Eeeeeeeeeee Ffffffffffffffffffffffffffffffff
G H I JjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjSo mal als Beispiel. Ich hoffe man kann das verstehen.
Es ist immer ein Haupteintrag für einen Bereich und darunter der Status der einzelnden Threas. Die Anzahl der Subeinträge sind unterschiedelich.Ich könnte auch damit leben wenn die subeinträge keine spalten haben. Aber sie dürften nicht an den spaltenenden abgeschnitten werden.
CListCtrl: Ich habe kein Control gefunden welches 2 verschiende Spaltenbreiten hat oder wo man über das spaltenende einfach drüberschreiben kann.
CTreeCtrl: Entweder gar keine spalten (geht nicht), tabs gibts auch nicht oder das gleiche spaltenproblem wie beim clistctrl.
CListBox: Mittels Tabs könnte man da was basteln. Ich würde aber lieber eine "richtige" Lösung.
Das Problem ist doch nicht so außergewöhnlich als dass es dafür keine Lösugn gibt.
Ich wäre für jede Hilfe dankbar.
Stefan
-
StefanKittel schrieb:
CListCtrl: Ich habe kein Control gefunden welches 2 verschiende Spaltenbreiten hat oder wo man über das spaltenende einfach drüberschreiben kann.
Wie meinst du das, 2 verschiedene Spaltenbreiten? Eine Spalte in einem ListCtrl kann natürlich nur eine Breite haben. Was spricht dagegen, wenn die Spalte immer die maximal benötigte Breite bekommt? Das könnte man mit SetColumnWidth(nCol,LVSCW_AUTOSIZE) machen.
-
_matze schrieb:
Wie meinst du das, 2 verschiedene Spaltenbreiten? Eine Spalte in einem ListCtrl kann natürlich nur eine Breite haben. Was spricht dagegen, wenn die Spalte immer die maximal benötigte Breite bekommt? Das könnte man mit SetColumnWidth(nCol,LVSCW_AUTOSIZE) machen.
schau Dir im Beispiel Spalte A und J an.
wenn die Spalte dadrunter oder darüber genauso Breit wäre würde das ganze ja so aussehen:Aaaaaaa Bbbbb Cc.DdEeeeeeeeeee......................................... Ffffffffffffffffffffffffffffffff
G.......H.....I..Jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjalso total auseinander gezogen
excel schreibt ja über die nächste Zelle drüber wenn diese keine werte enthält. Das funktioniert hier so leider nicht. Außer man schreib DrawItem um.