1
Ich benutze PyQt5 und Python 3.6PyQt5 QGraphicsView transparenter Hintergrund
Ich benutze die QtWidgets.QGraphicsView nur Maus Positionsdaten zu bestimmen, und ich möchte im Hintergrund malen.
Wie kann ich die QtWidgets.QGraphicsView transparent setzen?
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Controller(QtWidgets.QMainWindow):
def __init__(self, setting):
super().__init__()
self.setGeometry(50, 150, 1610, 1207)
self.graphicsView = QtWidgets.QGraphicsView()
self.graphicsView.setMouseTracking(True)
self.graphicsView.viewport().installEventFilter(self)
self.graphicsView.setObjectName("graphicsView")
self.setCentralWidget(self.graphicsView)
def paintEvent(self, event):
painter = QtGui.QPainter(self)
#paint something
def eventFilter(self, source, event):
if event.type() == QtCore.QEvent.MouseMove:
if event.buttons() == QtCore.Qt.NoButton:
pos = event.pos()
print(str(pos.x())+' '+ str(pos.y()))
else:
pass # do other stuff
return QtGui.QWindow.eventFilter(self, source, event)
Dies ist nur eine Beispielklasse.
danke im voraus.
Verwenden 'setStyleSheet ("background: transparent")' oder was auch immer das Äquivalent für PyQt? – rbaleksandar
Ich habe es überprüft und es ist da. Es klappt. Vielen Dank! –