QTreeWidget Model?????

Alles zum Qt Framework für Java
Antworten
tomsi
Beiträge: 7
Registriert: 3. Dezember 2007 09:36

QTreeWidget Model?????

Beitrag von tomsi »

Hallo! Kann mir irgendjemand ein kurzes Codebeispiel posten, wie man ein TreeWidget mit Models nutzt (einfügen, löschen und bearbeiten von Zeilen)? Ich blicke da einfach nicht durch...

Schon mal danke im voraus...
ArneStocker
Beiträge: 300
Registriert: 3. November 2004 16:15
Wohnort: Berlin

Beitrag von ArneStocker »

.. ich dachte ich hätte schon geantwortet, aber irgendwie ist meine Nachricht wohl im Nirwana verschwunden :?:

Fang doch bitte einfach mal mit einem einfachen (vorgefertigten) QStringListModel an, das Du mit Deinem View verbindest. Anschließend versuche mal, ein StringListModel selbst nachzubauen.

Code: Alles auswählen

public class TestMain extends QDialog {

    public static void main(String[] args) {
        QApplication.initialize(args);
        TestMain dialog = new TestMain();
        dialog.exec();
    }

    public TestMain() {
        super();
        // Layout hinzufügen
        QHBoxLayout layout = new QHBoxLayout(this);
        this.setLayout(layout);
        
        // View setzten
        QTreeView treeView = new QTreeView(this);
        treeView.setSelectionMode(QAbstractItemView.SelectionMode.SingleSelection);
        treeView.setSelectionBehavior(QAbstractItemView.SelectionBehavior.SelectRows);
        layout.addWidget(treeView);
        
        // Stringlist erstellen
        List<String> stringlist = new LinkedList<String>();
        stringlist.add("erste Zeile");
        stringlist.add("zweite Zeile");
        stringlist.add("dritte Zeile");
        
        // Stringlist Model erstellen
        QStringListModel stringlistmodel = new QStringListModel();
        stringlistmodel.setStringList(stringlist);
        treeView.setModel(stringlistmodel);
    }
}
Gruß Arne

PS.: das Bearbeiten der Zeilen erfolgt über sog. Delegates, da gibt es vorgefertigte, die kannst Du aber auch abwandeln.
Antworten