Seite 1 von 1

QTreeWidgetItem mit zwei Spalten

Verfasst: 20. Mai 2010 16:53
von marvel
hallo,
ich habe eine frage zu einem qtreewidget an dem ich gerade arbeite.

-> Ways
- Motorway
- Highway
-> Nature
- Water
- Tree

ways und nature stellen kategorien dar und motorway, highway, water, tree sind deren unterpunkte. jetzt möchte ich das treewidget so erweitern das neben motorway, highway, water, tree ein "check" symbol zu sehen ist. dazu habe ich versucht die spaltenanzahl auf 2 zu setzen und das "check" symbol in die 2 spalte einzufügen, leider mit falschem ergebnis.
anstatt sich das "check" symbol in der gleichen zeile wie motorway, highway, water, tree einfügt, rutscht es immer eine zeile tiefer. habe schon mehrere versuche und tests gemacht, aber komme nicht zur lösung. was mache ich falsch ?

Code: Alles auswählen


void Converter::initTreeWidget()
{
	// Top Level Nature
	QTreeWidgetItem *nature = new QTreeWidgetItem();
	nature->setText(0,tr("Nature"));

	QTreeWidgetItem *water = new QTreeWidgetItem(nature);
	water->setText(0,tr("Water"));

	QTreeWidgetItem *tree = new QTreeWidgetItem(nature);
	tree->setText(0,tr("Tree"));

	// Top Level Ways
	QTreeWidgetItem *ways = new QTreeWidgetItem();
	ways->setText(0,tr("Ways"));
	
	QTreeWidgetItem *motorway = new QTreeWidgetItem(ways);
	motorway->setText(0,tr("Motorway"));

	QTreeWidgetItem *highway = new QTreeWidgetItem(ways);
	highway->setText(0,tr("Highway"));
	
	// Check Item
	QTreeWidgetItem *check = new QTreeWidgetItem();
	check->setIcon(1,QIcon("D:\\Projects\\Qt\\Diplomarbeit\\OACConverter\\Icons\\check.png"));

	gui_converter->getTreeWidget()->setColumnCount(2); 
	gui_converter->getTreeWidget()->insertTopLevelItem(0,ways);
	gui_converter->getTreeWidget()->insertTopLevelItem(0,nature);	
}

Verfasst: 20. Mai 2010 19:37
von upsala
Schon mal damit probiert:

Code: Alles auswählen

void QTreeWidgetItem::setCheckState ( int column, Qt::CheckState state )
Event. muss damit noch gearbeitet werden

Code: Alles auswählen

void QTreeWidgetItem::setFlags ( Qt::ItemFlags flags )

Verfasst: 21. Mai 2010 13:07
von marvel
danke habs hinbekommen