#1 Wed 10 January 2024 08:42
- pyjoubert
- Participant assidu
- Lieu: Lyon
- Date d'inscription: 21 Mar 2006
- Messages: 347
QGIS/Python: Acces au canevas dans un plugin
Bonjour,
J'ai un plugin affichant une IHM.
Lorsque cette IHM est affichée, si je déplace ma souris dans le canevas, tout semble figé.
Je voudrais pouvoir cliquer sur un point, mais je n'ai plus la main.
Comment faire pour que malgré l'IHM affichée, je puisse avoir une interaction avec le canevas ?
Merci de vos réponses et bonne journée, PYJ
Hors ligne
#2 Wed 10 January 2024 09:05
- YoLecomte
- Participant assidu
- Lieu: Epinal
- Date d'inscription: 7 Jul 2015
- Messages: 266
Re: QGIS/Python: Acces au canevas dans un plugin
Bonjour,
Il faut que votre dialog Qt soit non Modal. Si c'est un QDialog vous pouvez utiliser
Code:
dialog.setModal(Qt.NonModal)
.
Voir à ce sujet:
https://doc.qt.io/qt-6/qt.html#WindowModality-enum
https://doc.qt.io/qt-6/qdialog.html#modal-prop
Dernière modification par YoLecomte (Wed 10 January 2024 09:15)
Hors ligne
#3 Wed 10 January 2024 09:15
- pyjoubert
- Participant assidu
- Lieu: Lyon
- Date d'inscription: 21 Mar 2006
- Messages: 347
Re: QGIS/Python: Acces au canevas dans un plugin
Bonjour Yoann,
Après vérification dans QtDesigner, la case Modal n'est pas cochée
Hors ligne
#4 Wed 10 January 2024 10:18
- pyjoubert
- Participant assidu
- Lieu: Lyon
- Date d'inscription: 21 Mar 2006
- Messages: 347
Re: QGIS/Python: Acces au canevas dans un plugin
C'est OK,
En fait dans le fichier du plugin, il n'y avait pas self.dlg.show() et dont d'après ce que j'ai pu lire, dans ce cas, même si Modal n'est pas coché, la boite s'ouvre quand même en modal
PYJ
Dernière modification par pyjoubert (Wed 10 January 2024 10:19)
Hors ligne
#5 Wed 10 January 2024 11:32
- YoLecomte
- Participant assidu
- Lieu: Epinal
- Date d'inscription: 7 Jul 2015
- Messages: 266
Re: QGIS/Python: Acces au canevas dans un plugin
En effet, comme la documentation le dis (cf le second lien que j'ai donné)
exec() ignores the value of this property and always pops up the dialog as modal.
Hors ligne