Die GUI meiner Software ist mit gtkmm erstellt. Darin möchte ich für Objekte der Klasse Gtk::TreeView eine Drag-and-Drop-Funktionalität realisieren. Da die gtkmm-Dokumentation sehr knapp gehalten ist und mir die Realisierung der Funktionalität nicht glücken wollte, habe ich versucht, das von gtkmm bereitgestellte Beispiel "drag_and_drop" zu bauen: Quelle: https://github.com/GNOME/gtkmm-documentation/tree/master/examples/book/treeview/drag_and_drop Toolchain: g++ main.cc examplewindow.cc treemodel_dnd.cc $(pkg-config gtkmm-3.0 --cflags --libs) -Wall -O3 -o main System: Kunbut 13.10 (3.11.0-17-generic #31-Ubuntu SMP Mon Feb 3 21:52:43 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux) Das Beispiel lässt sich ohne Probleme erstellen und auführen, nur leider zeigt sich bei der Demo-Andwendung überhaupt keine Spur von Drag-and-Drop. Meine Fragen nun hierzu: Gibt es dafür eine Erklärung? Wie bekomme ich für TreeView-Objekte eine Drag-and-Drop-Funktionalität realisiert? Liegt es an den Einstellungen meines Systems, dass Drag-and-Drop hier nicht unterstützt wird? Wenn ich für andere Widgets Drag-and-Drop implementiere, so funktioniert das tadellos. Bei einer Demo-Anwendung indess hätte ich erwartet, dass wenigstens hier Drag-and-Drop funktioniert.
Thomas schrieb: > Bei einer Demo-Anwendung indess hätte ich erwartet, dass > wenigstens hier Drag-and-Drop funktioniert. Ich nicht unbedingt -- das Beispiel ist ja schon etwas älter... Geht aber. Innerhalb des Treeview-Widgets kann ich die Einträge umgruppieren. Compiliert mit g++ main.cc examplewindow.cc treemodel_dnd.cc -o main `pkg-config gtkmm-3.0 --cflags --libs` Für gtk+-3.10.7:3 gtkmm-3.10.1:3.0 Gentoo-Linux (AMD64) Ich selbst kenne mich aber mit DND für Treeview Widgets und mit GTKmm nicht gut aus, eher mit gtk+ direkt unter C oder vorzugsweise mit den Bindings für Ruby. Yalu wäre HIER wohl der Experte.
Offensichtlich ist es tatsächlich ein Bibliotheksproblem der verwendeten Version gtkmm3.8.1-1. Wenn ich - wie Stefan - gegen die neuere gtkmm-3.10.1 linke, funktioniert es ebenfalls. Danke fürs Ausprobieren!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.