Guest User

Untitled

a guest
Jul 20th, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.29 KB | None | 0 0
  1. from PyQt5.QtWidgets import QWidget, QApplication, QVBoxLayout, QPushButton
  2. from PyQt5.QtCore import Qt
  3. from PyQt5.QtGui import QPainter, QPen, QColor
  4.  
  5.  
  6. class Widget(QWidget):
  7. def __init__(self):
  8. super().__init__()
  9.  
  10. self.setWindowFlags(Qt.FramelessWindowHint)
  11. self.setAttribute(Qt.WA_TranslucentBackground)
  12.  
  13. self.old_pos = None
  14. self.frame_color = Qt.darkCyan
  15.  
  16. layout = QVBoxLayout()
  17. layout.addStretch()
  18. layout.addWidget(QPushButton("Закрыть окно", clicked=self.close))
  19.  
  20. self.setLayout(layout)
  21.  
  22. def mousePressEvent(self, event):
  23. if event.button() == Qt.LeftButton:
  24. self.old_pos = event.pos()
  25.  
  26. def mouseReleaseEvent(self, event):
  27. if event.button() == Qt.LeftButton:
  28. self.old_pos = None
  29.  
  30. def mouseMoveEvent(self, event):
  31. if not self.old_pos:
  32. return
  33.  
  34. delta = event.pos() - self.old_pos
  35. self.move(self.pos() + delta)
  36.  
  37. def paintEvent(self, event):
  38. painter = QPainter(self)
  39.  
  40. painter.setBrush(QColor(0, 0, 0, 200))
  41. painter.setPen(QPen(self.frame_color, 10))
  42.  
  43. painter.drawRect(self.rect())
  44.  
  45.  
  46. if __name__ == '__main__':
  47. app = QApplication([])
  48.  
  49. w = Widget()
  50. w.resize(400, 300)
  51. w.show()
  52.  
  53. app.exec()
Add Comment
Please, Sign In to add comment