Ich habe versucht, ein Diagramm auf einer meiner Seiten auf gestapelte Widget in meiner GUI zu zeichnen. Ich habe einen Maler Klasse wie folgt:QPaintEvent deaktiviert QLineEdit beim Malen auf stackedWidget - PyQt
class Painter(QtGui.QWidget):
def __init__(self):
super(Painter, self).__init__()
def paintEvent(self, e):
qp = QtGui.QPainter(self)
self.draw_lines(qp)
def draw_lines(self, qp):
pen = QtGui.QPen(QtCore.Qt.blue, 2, QtCore.Qt.SolidLine) # draw graph
qp.setPen(pen)
qp.drawLine(80, 209, 150, 209)
qp.drawLine(150, 209, 220, 60)
qp.drawLine(430, 60, 500, 209)
qp.drawLine(500, 209, 570, 209)
qp.drawLine(220, 60, 430, 60)
Dann habe ich eine Klasse mit einer der Seiten auf meiner gestapelt Widget, wo ich Painter Klasse aufrufen:
# create page 2
self.page_2 = QtGui.QWidget()
self.main_layout = QtGui.QGridLayout()
self.page_2.setLayout(self.main_layout)
# create group box
self.group_box = QtGui.QGroupBox(self.page_2)
# add plot diagram
self.PaintPanel = diagram.Painter()
self.PaintPanel.close()
self.main_layout.addWidget(self.PaintPanel, 0, 0)
# set text field
self.text = QtGui.QLineEdit(self.group_box)
self.text.setGeometry(QtCore.QRect(160, 330, 41, 21))
self.stackedWidget.addWidget(self.page_2)
Mein Problem ist, dass die QLineEdit wird nicht aktiv (blockiert/eingefroren?), wenn ich das Painter-Klassen-Widget hinzufüge. Ohne dies funktioniert der QLineEdit gut. Ich frage mich, warum das so ist und wie das zu beheben ist? Jede Hilfe wird sehr geschätzt. Danke
Okay, ich verstehe es jetzt. Vielen Dank, ich verstehe, wo mein Fehler ist. Ich möchte, dass es wie folgt aussieht: ein Diagramm, das von der Painter-Klasse oben auf der Seite gemalt wurde (zum Beispiel auf einem QFrame oder ähnlichem) und ein QLineEdit unten auf der Seite, so dass mein Diagramm nicht darauf sitzt QLineEdit nicht mehr. Weißt du wie ich das archivieren kann? Jeder Tipp wird hilfreich sein, danke :) – nela
Ich habe es jetzt herausgefunden. Vielen Dank für Ihre Hilfe @goug – nela
Sie sind herzlich willkommen. Ich bin froh, dass es hilfreich war. – goug