Note that there are some explanatory texts on larger screens.

plurals
  1. POpopup menu on QTreeWidget on right mouse click with python
    text
    copied!<p>I'm trying to write a program with python that contains a treewidget and having the ability to add, rename and remove cluster after clicking with the right mouse button on them. I'm quite new with python and this is my code so far:</p> <pre><code>from PyQt4 import QtCore, QtGui try: _fromUtf8 = QtCore.QString.fromUtf8 except AttributeError: def _fromUtf8(s): return s try: _encoding = QtGui.QApplication.UnicodeUTF8 def _translate(context, text, disambig): return QtGui.QApplication.translate(context, text, disambig, _encoding) except AttributeError: def _translate(context, text, disambig): return QtGui.QApplication.translate(context, text, disambig) class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName(_fromUtf8("MainWindow")) MainWindow.resize(800, 600) self.centralwidget = QtGui.QWidget(MainWindow) self.centralwidget.setObjectName(_fromUtf8("centralwidget")) self.treeWidget = QtGui.QTreeWidget(self.centralwidget) self.treeWidget.setGeometry(QtCore.QRect(155, 50, 481, 361)) self.treeWidget.setObjectName(_fromUtf8("treeWidget")) MainWindow.setCentralWidget(self.centralwidget) self.menubar = QtGui.QMenuBar(MainWindow) self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 25)) self.menubar.setObjectName(_fromUtf8("menubar")) MainWindow.setMenuBar(self.menubar) self.statusbar = QtGui.QStatusBar(MainWindow) self.statusbar.setObjectName(_fromUtf8("statusbar")) MainWindow.setStatusBar(self.statusbar) self.retranslateUi(MainWindow) self.buildingTree() QtCore.QMetaObject.connectSlotsByName(MainWindow) def retranslateUi(self, MainWindow): MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow", None)) self.treeWidget.headerItem().setText(0, _translate("MainWindow", "Assignment1", None)) __sortingEnabled = self.treeWidget.isSortingEnabled() def buildingTree(self): item_0 = QtGui.QTreeWidgetItem(self.treeWidget) item_1 = QtGui.QTreeWidgetItem(item_0) item_2 = QtGui.QTreeWidgetItem(item_1) item_1 = QtGui.QTreeWidgetItem(item_0) item_2 = QtGui.QTreeWidgetItem(item_1) self.treeWidget.setSortingEnabled(False) self.treeWidget.topLevelItem(0).setText(0, _translate("MainWindow", "default", None)) self.treeWidget.topLevelItem(0).child(0).setText(0, _translate("MainWindow", "cluster1", None)) self.treeWidget.topLevelItem(0).child(0).child(0).setText(0, _translate("MainWindow", "clusterA", None)) self.treeWidget.topLevelItem(0).child(1).setText(0, _translate("MainWindow", "cluster2", None)) self.treeWidget.topLevelItem(0).child(1).child(0).setText(0, _translate("MainWindow", "clusterA", None)) if __name__ == "__main__": import sys app = QtGui.QApplication(sys.argv) MainWindow = QtGui.QMainWindow() ui = Ui_MainWindow() ui.setupUi(MainWindow) MainWindow.show() sys.exit(app.exec_()) </code></pre> <p>Could someone please tell me how do I open a popup menu after clicking with the right mouse button on a certain cluster? Thank you in advance!</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload