From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Discussions au sujet de NI LabVIEW

annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 

masquer curseur VI

Résolu !
Accéder à la solution

Bonjour,

 

Tout est dans le titre. Je souhaite simplement "effacer" le curseur lorqu'il traverse une zone d'image (soit mon VI).

J'ai cherché dans les propriété de curseur à " visible" mais je n'arrive pas a crer sa référence...

 

Si quelqu'un a une idée, merci d'avance.

0 Compliments
Message 1 sur 20
5 192 Visites
Solution
Accepté par Sergreyn
Message 2 sur 20
5 178 Visites

Bonjour,

Merci pour le lien Ouadji, ça pourra peut être me servir un jour à l'occasion.

J'ai juste une remarque à faire concernant ce VI.


Pour ma part, j'encourage vivement les utilisateurs à changer le chemin de la DLL. En effet, dans les appels de code externe, il est fortement déconseillé d'utiliser des chemins absolus pour les appels de DLL native à l'OS.


En effet, cela pourrait engendrer une instabilité du système lors de l'installation de votre programme sur d'autres machines, car l'installeur de labview viendrait alors écraser la dll existante à cette emplacement qu'elle soit plus récente ou non.

 

Le fait d'utiliser le chemin relatif "User32.dll" dans le noeud d'appel permet de conserver la fonctionnalité, et en cas d'installation, cela viendra chercher la dll existante dans l'OS cible.


Cdt,


Michael

“En science, la phrase la plus excitante que l'on peut entendre, celle qui annonce des nouvelles découvertes, ce n'est pas "Eureka" mais c'est "drôle"
Isaac ASIMOV
Message 3 sur 20
5 161 Visites

Ok merci!

 

Pas d'idée concernant la classe curseur avec sa propriété visible ?

0 Compliments
Message 4 sur 20
5 147 Visites

Pas simple a utiliser la cette fonction de user32.

Je vois pas trop comment je peux faire pour simplement créer un booléen qui l'utilise pour masquer/afficher le curseur.

0 Compliments
Message 5 sur 20
5 144 Visites

Sergreyn a écrit :

Je vois pas trop comment je peux faire pour simplement créer un booléen qui l'utilise pour masquer/afficher le curseur.


exp.png

Reg
0 Compliments
Message 6 sur 20
5 135 Visites

Je suis tributaire du temps. Il faudrait qu'on trouve un moyen de s'affranchir du "return type".

MYVI6.PNGIci si le return type est supérieur à 1 le curseur restera toujours visible. 

0 Compliments
Message 7 sur 20
5 123 Visites

La fonction ShowCursor possède un compteur.

 

si l'entrée "show" est à "0", tu décrémentes le compteur.

si l'entrée "show" est à "1" tu incrémentes le compteur.

 

si le compteur est inférieur à zéro ... le curseur est "hide".

si le compteur est supérieur ou égal à zéro ... le curseur est visible

 

la sortie "show" est une copie de l'entrée "show"

la sortie "return type" donne la valeur courante du compteur.

 

Ceci dit ...

Je ne vois pas l'utilité de passer par cette histoire de compteur !!

un simple "on/off" aurait été beaucoup plus facile.

(pourquoi faire simple quand il y a moyen de faire compliqué 😉 )

Mais bon ... cette fonction windows est implémentée de cette façon, il faut s'en accommoder.

Message 8 sur 20
5 112 Visites

C'est bien ce que j'avais compris.

 

Du coup je vois pas comment m'en sortir pour transformer ça en simple ON/OFF.

0 Compliments
Message 9 sur 20
5 105 Visites

Pour ma part, je ne comprend pas l'intéret de mettre l'appel à DLL dans une boucle While.

Après test sur mon poste en LV 2014, suite à l'envoi une seule fois de 0 via l'appel, mon curseur devient invisble dans mon VI, tant que je n'ai pas fait une exécution à 1.

 

 

Donc il te suffite de faire appel à cette fonction que lors du changement d'état de ton booléen, ainsi le return type n'évoluera pas dans l'intervalle et restera compris entre les valeurs -1 & 0.

 

Cdt,

Michael

“En science, la phrase la plus excitante que l'on peut entendre, celle qui annonce des nouvelles découvertes, ce n'est pas "Eureka" mais c'est "drôle"
Isaac ASIMOV
0 Compliments
Message 10 sur 20
5 095 Visites