From 5963d889661f0895e9683fc0bdb1d770b7ec85de Mon Sep 17 00:00:00 2001 From: Toast Date: Mon, 21 Oct 2024 10:49:31 +0200 Subject: [PATCH 1/2] Format code --- src/leek/leek.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/leek/leek.py b/src/leek/leek.py index a95710e..9c93f47 100644 --- a/src/leek/leek.py +++ b/src/leek/leek.py @@ -34,8 +34,8 @@ class leekMainWindow(QMainWindow): layout.addWidget(self.label) layout.addWidget(button) - self.setMaximumSize(QSize(800,600)) - self.setMinimumSize(QSize(400,300)) + self.setMaximumSize(QSize(800, 600)) + self.setMinimumSize(QSize(400, 300)) container = QWidget() container.setLayout(layout) @@ -47,14 +47,13 @@ class leekMainWindow(QMainWindow): print("Button was clicked") def button_toggled(self, checked): - print("Checked?", checked ) + print("Checked?", checked) def main(): # If you know you won't use command line arguments QApplication([]) works too. app = QApplication(sys.argv) - # Create a Qt widget, which will be our window. window = leekMainWindow() window.show() # IMPORTANT!!!!! Windows are hidden by default. From 56fdcd9114ad09631b752d18e227b63c9bdcfb94 Mon Sep 17 00:00:00 2001 From: Toast Date: Mon, 21 Oct 2024 11:07:05 +0200 Subject: [PATCH 2/2] Add mouse events --- src/leek/leek.py | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/src/leek/leek.py b/src/leek/leek.py index 9c93f47..0c79c4d 100644 --- a/src/leek/leek.py +++ b/src/leek/leek.py @@ -1,6 +1,6 @@ import sys -from PySide6.QtCore import QSize +from PySide6.QtCore import Qt, QSize from PySide6.QtWidgets import ( QApplication, QLabel, @@ -20,6 +20,7 @@ class leekMainWindow(QMainWindow): self.setWindowTitle("Leek!") self.label = QLabel() + self.mouse_label = QLabel() self.input = QLineEdit() self.input.textChanged.connect(self.label.setText) @@ -32,6 +33,7 @@ class leekMainWindow(QMainWindow): layout = QVBoxLayout() layout.addWidget(self.input) layout.addWidget(self.label) + layout.addWidget(self.mouse_label) layout.addWidget(button) self.setMaximumSize(QSize(800, 600)) @@ -49,6 +51,39 @@ class leekMainWindow(QMainWindow): def button_toggled(self, checked): print("Checked?", checked) + def mouseMoveEvent(self, e): + self.mouse_label.setText("mouseMoveEvent") + + def mousePressEvent(self, e): + button = "" + if e.button() == Qt.MouseButton.LeftButton: + button = "left" + elif e.button() == Qt.MouseButton.MiddleButton: + button = "middle" + elif e.button() == Qt.MouseButton.RightButton: + button = "right" + self.mouse_label.setText("mousePressEvent " + button) + + def mouseReleaseEvent(self, e): + button = "" + if e.button() == Qt.MouseButton.LeftButton: + button = "left" + elif e.button() == Qt.MouseButton.MiddleButton: + button = "middle" + elif e.button() == Qt.MouseButton.RightButton: + button = "right" + self.mouse_label.setText("mouseReleaseEvent " + button) + + def mouseDoubleClickEvent(self, e): + button = "" + if e.button() == Qt.MouseButton.LeftButton: + button = "left" + elif e.button() == Qt.MouseButton.MiddleButton: + button = "middle" + elif e.button() == Qt.MouseButton.RightButton: + button = "right" + self.mouse_label.setText("mouseDoubleClickEvent " + button) + def main(): # If you know you won't use command line arguments QApplication([]) works too.