В PyQT я хочу перетащить кнопку за пределы окна, однако это запрещеноPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 В PyQT я хочу перетащить кнопку за пределы окна, однако это запрещено

Сообщение Anonymous »

Спасибо за чтение.
Я хочу перетащить кнопку за пределы окна, однако она не работает.
Я думаю, проблема с QmimeData, однако я не знаю, как это сделать. .
Кто-нибудь знает об этом?
Спасибо.
class DragButton(QPushButton):
def mouseMoveEvent(self, e):
if e.buttons() == Qt.LeftButton:
drag = QDrag(self)
mime = QMimeData()
drag.setMimeData(mime)
pixmap = QPixmap(self.size())
self.render(pixmap)
drag.setPixmap(pixmap)

drag.setHotSpot(e.pos())
drag.exec(Qt.MoveAction)

def mousePressEvent(self, e):
if e.button() == Qt.LeftButton:
self.original_parent = self.parent()
super().mousePressEvent(e)

class MainWindow(QMainWindow):
def init(self, title, менеджер, button_text):
super().init()
self.setWindowTitle(title)
self.manager = менеджер
layout = QVBoxLayout()
button = DragButton(button_text)
layout.addWidget(button)

container = QWidget()
container.setLayout(layout)
self.setCentralWidget(container)

def closeEvent(self, event):
self.manager.window_closed(self)
super().closeEvent(event)


Подробнее здесь: https://stackoverflow.com/questions/786 ... -forbidden
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»