PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : KListView Einträge verschieben



celindir
28-03-2003, 14:38
Hallo zusammen,

ich habe schon mal bei http://developer.kde.org/documentation/library/3.0-api/classref/kdeui/KListView.html nachgelesen, aber richtig schlau bin ich leider nicht geworden (einfach zu viele Informationen für mich)

Daher meine Frage:

Was brauche ich alles, um Einträge in einem KListView per Maus verschieben zu können.

Ich will nur innerhalb des Listview verschieben. Es müssen keine Objekte von aussen reingezogen oder von dort rausgezogen werden können.

Es soll nur möglich sein die vorhandenen Items anders zu organisieren.

Ich bin mir nicht sicher, was ich dazu alle brauche (move(), dropped() etc???)

Kann das KListView von Haus aus oder muss ich die verschiedenen Aktionen erst miteinander kombinieren (also nach dem Motto: wenn drag dann dort löschen und wenn drop dann dort einfügen)

Am besten mit einem kleinen Codebeispiel :D

Vielen Dank

anda_skoa
28-03-2003, 19:59
Hat ein bischen länger gedauert, musste das zuerst ausprobieren.

Du brauchst


setDragEnabled(true);
setAcceptDrops(true);
setSorting(-1); // disable sorting


eventuell noch


setDropVisualizer(true);

um die angezeigt zu bekommen, wo gedropped wird.

Ciao,
_

celindir
31-03-2003, 08:52
@anda_soka

Vielen Dank, werde es a.s.a.p. ausprobieren.

Wann hast Du eigentlich noch Zeit für andere Dinge, wenn Du auch noch ständig die Programme anderer ausprobierst:)

Ich bin begeistert. Vielen Dank für eine super Betreuung!!

Da macht es richtig Spass weiter zu machen.

Gruß

celindir
31-03-2003, 13:33
Hallo,

ich habs gerade mal in der Mittagspause (Knoppix sei dank) ausprobiert.

wenn man statt

setDropVisualizer(true);


setDropVisualizer(false);
setDropHighlighter(true);

setzt, dann sieht auch der optische Effekt vertrauter aus.

Was mir allerdings aufgefallen ist:

Man kann scheinbar nur Elemente in vorhandene Unterebenen verschieben aber man kann durch das Verschieben keine neuen Unterebenen errichten.

Ist das korrekt oder stelle ich mich nur zu dumm an.

Beispiel:

In einer Liste, die nur Einträge erster Ordnung hat, kann ich nur die Reihenfolge der Einträge mit Drag&Drop verändern. Ich kann aber keine Hierarchie erstellen.

Korregiert mich bitte, wenn ich falsch liege.

Gruß

anda_skoa
31-03-2003, 19:58
Das setDropVisualizer(false); brauchst du nicht, das ist ohnehin per default auf false.

Mit dem Einfügen scheinst du recht zu haben.
Man müsste zb im Source des KDE Bookmark Editors nachsehen, wei das dort gemacht wird.

Ciao,
_