Что такое роль в QTreeWidgetItem?
у меня есть QTreeWidget
с несколькими столбцами, я добавить QTreeWidgetItems
к нему. Я пытаюсь сделать второй столбец содержать числовое значение для каждого Item
поэтому я могу сортировать элементы по этому значению
QTreeWidgetItem has a method called setData(int column, int role, QVariant(data))
Я не могу найти никакой документации о том, что это
3 ответов
вы можете использовать Qt:: UserRole для конкретных целей приложения. Поскольку эти данные являются QVariant, вы можете создать QList для установки нескольких данных, а затем привести его к QVariant и установить данные.
вот пример:
QTreeWidgetItem* item = new QTreeWidgetItem();
QList<QVariant> dataList;
dataList.append("data 1");
dataList.append("data 2");
QVariant data(dataList);
item->setData(0, Qt::UserRole, data);
соответствующую документацию можно найти в разделе Qt:: ItemDataRole (нашли через помощью переопределенной QAbstractItemModel::setdata при работе). Роли используются для указания того, для чего должны использоваться передаваемые данные. Вы можете использовать разные роли для установки всплывающей подсказки, шрифта или цвета элемента, среди прочего.