Page 1 of 1
changer curseur d'un QDialog
Posted: 19 Apr 2023, 03:57
by dragonix
bonjour,
je voudrais changer la forme du curseur de mon widget QDialog, mais ça marche pas. pourtant j'ai vu dans le debug de ma class Qdialog qu' il y avait la méthode "setShape()" mais ça n'a aucun effet
Code: Select all
var maFenetre= new QDialog();
maFenetre.cursor.setShape(Qt.CrossCursor)
/*j'ai tenté ça aussi mais je sais pas comment l'attribuer au widget, vu que j'ai apparemment pas la méthode setCursor()*/
var cursor_= new QCursor();
cursor_.setShape(Qt.CrossCursor)
j'ai essayé plein d'écriture entre les parenthèse , mais ça marche pas
j'ai parcouru la doc QT, alors il parle de la methode "setCursor()" pour changer le curseur d'un widget , mais je la vois pas dans ma classe QDialog qui est un widget, comprend pas, enfin voilà je patauge un peu avec QT C++ binding javascript
merci si vous me répondez
Re: changer curseur d'un QDialog
Posted: 19 Apr 2023, 10:04
by francois
Bonjour,
Juste une piste :
Avec
(sans paramètre)
on a le message
- setShape.jpg (10.46 KiB) Viewed 897 times
Donc :
-- maFenetre.cursor.setShape est reconnu
-- par contre, Qt.CrossCursor comme paramètre ne convient pas
Re: changer curseur d'un QDialog
Posted: 19 Apr 2023, 12:30
by dragonix
alors je sais pas si tu me donne juste une piste pour que je trouve de moi même
j'avais pas essayé sans rien dans les parenthèse, du coup je voyais pas cette info dans la console debug, donc j' en déduis qu' il faut instancier un CursorShape , donc j' ai fais ça :
Code: Select all
var cursorShape_= new Qt.CursorShape(3);
maFenetre.cursor.setShape(cursorshape_)
cependant pour l'instant quand je le fais, ça change rien et pourtant j'ai pas d'erreur de debug, et j'ai bien cursorShape=waitCursor
- shape.jpg (24.04 KiB) Viewed 887 times
v continuer à chercher ce soir je dois pas être loing
Re: changer curseur d'un QDialog
Posted: 19 Apr 2023, 12:39
by francois
alors je sais pas si tu me donne juste une piste pour que je trouve de moi même
Non, j'utilise de manière 'basique' Qt.
Mais il me semblait que la piste était interessante.
Re: changer curseur d'un QDialog
Posted: 21 Apr 2023, 05:44
by dragonix
bon j'ai enfin trouvé
, en fait au début je pensais qu'on avait accès directement aux fonctions public de QWidget la classe de base, et donc qu 'on pouvait appeler directement setCursor() par exemple, vue que QDialog est un Widget donc cette QDialog devrait hériter des fonctions de QWidget,alors je sais pas pourquoi ces fonctions sont pas visible, donc je me suis dit je vais tenter d'affecter directement ma nouvelle instance "cursor_" à la propriété "cursor" (je sais pas trop si c'est une propriété, un objet..) de ma fenêtre, et ça fonctionne
Code: Select all
/*écriture détaillée nouvelle instance d'un curseur*/
var cursor_= new QCursor();
var shape_= new Qt.CursorShape(2);
cursor_.setShape(shape_)*/
/*écriture compacte nouvelle instance d'un curseur*/
var cursor = new QCursor(Qt.CursorShape(2))
/*affectation du curseur à la fenêtre*/
maFenetreQDialog.cursor=cursor_
voilà voilà
Re: changer curseur d'un QDialog
Posted: 21 Apr 2023, 19:55
by MDLE46
Bonjour Dragomix,
n'ayant ton niveau en informatique, pourrait je avoir un script exemple complet pour bien comprendre les tenants et les aboutissants.
Merci.
Cordialement.
MDLE46
Re: changer curseur d'un QDialog
Posted: 21 Apr 2023, 20:44
by dragonix
la je mange, c'est quoi ce que tu veux comme exemple, parce que si c'est un exemple pour changer le curseur c'est simplement les 2 lignes de codes que j'ai posté
Après si c'est une mise en situation et l'utilité de changer le curseur comme dans mon cas vu que j' ai crée une fenêtre de configuration qui permet à un utilisateur qui utilisera l'exécutable autonome de définir les coordonnées des différentes actions prévu par le script par l'intermédiaire de la sourie pour que quelque soit l'emplacement des fenêtres on puisse utiliser le script, oui je peux te donner le code de la fenêtre en le simplifiant et en laissant juste le code pour récupérer des coordonnées avec un bouton et le fameux changement de curseur lorsqu'on clic sur le bouton pour choisir l'emplacement sur l'écran, pour que ça soit plus lisible,vu que je découvre QT, j’essaie divers éléments de mise en forme dans les fenêtres comme les layout,groupBox,police,couleur de police ...
Donc si c'est ça que tu veux, je mettrais des commentaires dans le code, et je te ferais ça, bon la c'est le week-end, donc v prendre l'air
je suis pas un professionnel, je te rassure
sur la photo on voit pas le curseur en croix car imprim écran ne prend pas la sourie, mais quand on clic sur les bouton on a bien la croix
- conf.jpg (221.31 KiB) Viewed 848 times
Re: changer curseur d'un QDialog
Posted: 25 Apr 2023, 07:58
by francois
A partir des recherches de dragonix, exemple de base en pièce jointe.
La forme du curseur est déterminée dans :
Code: Select all
shape_= new Qt.CursorShape(num_cursor);
num_cursor va de 0 à 21.
On a donc le choix entre 22 formes de curseur différentes
Re: changer curseur d'un QDialog
Posted: 25 Apr 2023, 18:40
by MDLE46
.
Merci François, et bon appétit.
Cdlt. MDLE46.
Re: changer curseur d'un QDialog
Posted: 12 May 2023, 09:04
by dragonix
Pour ceux qui pourraient être intéressés, je vous mets mon petit module de récupération des coordonnées de la sourie en pointant un emplacement.
il y a trois fichiers script, c'est exactement le même script pour les trois mes avec une version beaucoup de commentaire, une l'essentielle et une autre avec nommage des variables plus compact. j' ai pris le temps de
faire ça, si des personnes qui ne font pas de programmation souhaite comprendre le code,enfin j'espère.
Re: changer curseur d'un QDialog
Posted: 12 May 2023, 11:25
by dragonix
j'ai même fait un petit plugin pour mettre thème et couleur,c'est de la bidouille mais ça fonctionne, ça m'a permis de comprendre comment coder des instructions QtSript avec javaScript, ça pas été facile
, faut encore que je règle certaine choses donc pas fini, et ça ne pourra pas tout changer au niveau des couleurs car c'est un tour de passe passe,donc je n'ai pas accès à tout,en faisant comme ça, mais bon c’est en cherchant à manipuler les classes Qt, que ça m'a emmené à faire ça, j'aime bien avoir un but concret.Et ça pourra peut être aiguiller des personnes qui ont besoin d'utiliser ou de faire des des boites de dialogue personalisé,des liste de boutons,des listes checkables,connecter des signaux,etc..
je vous mets un petit aperçu,en attendant de peaufiner au mieux, il me reste encore des trucs à régler
- ThèmeFusionEtCouleurInterface.jpg (343.86 KiB) Viewed 687 times
- ThèmeFusionEtCouleurFenetreConfig.jpg (185.21 KiB) Viewed 687 times