Gestion de la souris avec PySide
Bonjour,
je ne trouve pas comment acceder à la souris (pour la rendre inactive pendant certain processus).
J'ai bien trouvé une piste avec "curses" et curses.curs_set(0) mais cela ne marche pas (je suis sous windows.)
j'ai l'erreur
File "c:/Users/HP/OneDrive/Ma_Formation_Python/Exemples de code/Appli-PySide6/Button.py", line 2, in <module>
import curses
File "C:\Python37\lib\curses\__init__.py", line 13, in <module>
from _curses import *
ModuleNotFoundError: No module named '_curses'
Merci de votre aide.
Bonjour Jean-Marc,
Tu peux utiliser la méthode setCursor pour changer le curseur et ensuite dans dans la classe Qt tu as différents curseurs que tu peux utiliser, tu peux trouver tous les curseurs disponibles ici : https://doc.qt.io/qtforpython/PySide6/QtCore/Qt.html#PySide6.QtCore.PySide6.QtCore.Qt.CursorShape
Ils sont dans le module PySide6.QtCore.Qt.
Je te mets un petit exemple de code pour que ce soit plus clair :
import sys
from PySide6 import QtCore
from PySide6.QtCore import Qt
from PySide6.QtWidgets import QApplication, QMainWindow
class MainWindow(QMainWindow):
def __init__(self):
super(MainWindow, self).__init__()
# Changer le curseur pour un sablier
self.setWaitCursor()
def setWaitCursor(self):
# Définir le curseur comme étant une montre (wait cursor)
self.setCursor(Qt.WaitCursor)
# Désactiver le wait cursor après un certain délai (optionnel)
# Par exemple, après 5 secondes (5000 ms)
QtCore.QTimer.singleShot(5000, self.restoreCursor)
def restoreCursor(self):
# Restaurer le curseur par défaut
self.setCursor(Qt.ArrowCursor)
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec())
Inscris-toi
(c'est gratuit !)
Tu dois créer un compte pour participer aux discussions.
Créer un compte