Я воспользовался некоторыми полезными онлайн-учебниками Ясина Улудага, чтобы поэкспериментировать с PyQt (или, скорее, PySide), чтобы создать простое древовидное представление, но у меня возникают проблемы с получением всплывающих подсказок. В следующем коде текст подсказки отображается на консоли, а не в окне всплывающей подсказки. Все остальные примеры, которые я видел, используют setToolTip непосредственно в элементе виджетов, но я не думаю, что у меня есть прямой доступ к этому в этом подходе Model/View. Есть ли какая-то инициализация, которую мне нужно сделать для самого QTreeView?Отображение всплывающих подсказок в PyQT для элемента QTreeView
class TreeModel(QtCore.QAbstractItemModel):
def __init__(self, root, parent=None):
super(NXTreeModel, self).__init__(parent)
self._rootNode = root
def data(self, index, role):
node = index.internalPointer()
if role == QtCore.Qt.DisplayRole or role == QtCore.Qt.EditRole:
return node.name()
if role == QtCore.Qt.ToolTipRole:
return node.keys()
Qt :: ToolTip не является флагом в Qt, поэтому это не сработает. Вместо этого используйте функцию данных и верните что-то полезное для Qt :: ToolTipRole. –