def _iconOverlayEvent(self, event): popup = QMenu(self) layout = QVBoxLayout() layout.setContentsMargins(4, 4, 4, 4) popup.setLayout(layout) iconLabel = QLabel(popup) layout.addWidget(iconLabel) closeEvent = lambda event: popup.setParent(None) geometry = self.songIcon.geometry() songIcon = QPixmap(self.iconPath) iconLabel.setGeometry(geometry) iconLabel.setPixmap(songIcon) iconLabel.mousePressEvent = closeEvent popup.popup(event.globalPos() - event.pos())