Qt-Designer

Verschiedenes zu Qt
Antworten
Heraklea67
Beiträge: 6
Registriert: 29. Oktober 2007 20:13

Qt-Designer

Beitrag von Heraklea67 »

Servus Leute,

also einige grundlagen habe ich schon durch.

hab da mal so ne frage, das linke dockwidget im qt-designer. Was ist das genau?

ist das ein Tree im dock oder was anderes?

Möchte gerne sowas mal programmieren, gibts eventuell einen wegweiser oder so??
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Das ist ein QTreeView bei dem die jeweiligen Titel durch ein spezielles QItemDelegate dargestellt werden. Du findest das Delegate als SheetDelegate im Code des Designers wieder...
Heraklea67
Beiträge: 6
Registriert: 29. Oktober 2007 20:13

Beitrag von Heraklea67 »

Hallo danke Dir erstmal, aber für den ersten Schritt ist dass ziemlich heftig.
Sag mal gibts da net so ein Snippet wo man sich das mal anschauen kann.
In Designer/src sieht man ja den wald vor lauter bäume nicht.
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Beschäftige dich erst mal allgemein mit der Model-View-Programmierung.
Wenn du dich dann ein wenig eingearbeitet hast, kannst du ja mal das oben angesprochene Delegate rauskopieren und zum testen bei dir einbauen.
Heraklea67
Beiträge: 6
Registriert: 29. Oktober 2007 20:13

Beitrag von Heraklea67 »

Danke, also habe mal ein Tree gemacht: Der code:

Code: Alles auswählen

QDockWidget *docktree = new QDockWidget(tr("MyTestTree"), this);
    docktree->minimumHeight();
    docktree->setAutoFillBackground(true);
    docktree->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
    QTreeWidget *testTree = new QTreeWidget(docktree);
    testTree->setColumnCount(1);
    
    
    QStringList headerLabels;
    headerLabels << "Label";
    testTree->setHeaderLabels(headerLabels);
    
  	QTreeWidgetItem* item[10];
    item[0] = new QTreeWidgetItem(testTree);
    item[0]->setText(0, "Node-One");
    
    for (int i=1; i< 5; ++i)
      item[i] = new QTreeWidgetItem(item[0]);
    item[1]->setText(0, "a");
    item[2]->setText(0, "b");
    item[3]->setText(0, "c");
    item[4]->setText(0, "d");
    item[5] = new QTreeWidgetItem(testTree);
    item[5]->setText(0, "Node-Two");
    for (int i=6; i< 10; ++i)
      item[i] = new QTreeWidgetItem(item[5]);
    item[6]->setText(0, "a");
    item[7]->setText(0, "b");
    item[8]->setText(0, "c");
    item[9]->setText(0, "d");

Ich bin ja willig zu lernen so ist es ja nicht aber was für dich erstmal selbstverständlich erscheint muss ich mir erstmal erarbeiten.

Also da der tree steht wo muss ich jetzt ansetzen ;o)
Dateianhänge
Tree.jpg
Tree.jpg (20.66 KiB) 1747 mal betrachtet
Antworten