Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#12

Re: ListView, breite ändern - Items neu zeichnen.

  Alt 3. Okt 2006, 19:07
Noch was anderes zu den Thema!
also wenn ich das richtig verstanden habe möchtest du objekte die im Listview
angezeigt werden nicht neuzeichnen sondern reorganisieren abhängig von der breite
der objekte welche du vorher festgelegt hast.

Beispiel:
Ein listview ist unterteil in Row und Col stelle es dir also als gitter vor.
Wenn du nun zwei objekt hast welche 100x100 groß sind dann benötigst du zwei columheader(col) und ein Row
Wird das Listview nun verschoben, verkleinert mußt du dafür sorge tragen das wie oben
beschrieben du den REC des Listview kennst.

Den holst du über GetWindowRec(handle vom listview).
Diesen mußt du immer durch die breite und höhe deiner Objekte teilen.
Da abhängig davon row/cols entfernt bzw.. addiert werden.

Nur breite verändern!
Ist der rec weniger als 200 + space(freiraum zwischen jeden objekt) dann mußt du
dafür sorgen das dein objekt scaliert wird oder aber Col um 1 minimiert wird.

Bei der ersten Methode bleiben beide objekte erhalten aber verkleinert
Bei der zweiten ist nur noch eins vorhanden(sichtbar).

Wenn du beides verschiebst. geht es im grunde genauso.
Also wenn breite mehr als 200 + space dann col addieren und row abziehen wobei das objekt von Row dann
in den neu geschaffenenen Columnheader angezeigt wird.

Hoffe das ist es was du meinst. Sorry für die lange geschichte!

gruß
  Mit Zitat antworten Zitat