Ich versuche, eine Umwandlung von etwas Code von PyQt4 nach PyQt5, aber ich habe noch nie mit PyQt gearbeitet, deshalb habe ich einige Probleme damit. Ich habe es versäumt, etwas Code mit .connect zu konvertieren, weil, wie ich in PyQt5 verstehe, die Arbeit mit Signalen und Slots geändert wurde. Hier ist der Code.Um PyQt5 'connect' Konvertierung
class Gui(QWidget.QMainWindow, Ui_MainWindow):
def __init__(self, cfgpath):
QWidget.QMainWindow.__init__(self)
Ui_MainWindow.__init__(self)
self.configpath = cfgpath
self.paint = Viewer(self)
self.setupUi(self)
self.loadButton.clicked.connect(self.loadImage)
self.maskClearButton.clicked.connect(self.paint.clearMask)
self.brushSizeSB.valueChanged.connect(self.brushSizeChange)
btnlist = [self.horDownBtn, self.horDownLargeBtn, self.horUpBtn, self.horUpLargeBtn,
self.vertDownBtn, self.vertDownLargeBtn, self.vertUpBtn, self.vertUpLargeBtn]
sigmap = QtCore.QSignalMapper(self)
for i in range(len(btnlist)):
# Here it falls
self.connect(btnlist[i], QtCore.SIGNAL("clicked()"), sigmap, QtCore.SLOT("map()"))
btnlist[i].clicked
sigmap.setMapping(btnlist[i], i)
# And here
self.connect(sigmap, QtCore.SIGNAL("mapped(int)"), self.paint.handleScaleBtn)
So wie kann ich diesen Code ändern es funktioniert?
bitte teilen Ui_MainWindow Klasse – eyllanesc
@ eyllanesc Es ist ziemlich lang und wird von einigen .ui-Datei geladen. Wenn es wirklich benötigt wird, kann ich es mit gist teilen. – MOVZBL
Testen Sie zuerst meine Lösung, und wenn es nicht funktioniert, teilen Sie es über gist, aber machen Sie meine Antwort richtig: – eyllanesc