[Résolu] - MouseIcon "Doigt" (type lien hypertext) sur Control d'un UserForm

zorglubxp

XLDnaute Junior
Bonjour à tous,

J'ai ici et là cherché comment faire apparaître l'icone de la souris en forme de doigt à l'instar de ce qu'il se passe au survol d'un lien hypertext.

j'ai à plusieurs reprises trouvé ce type de procédure avec en argument du MouseIcon un fichier *.cur

VB:
Private Sub tbxLnk_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
   
    With tbxLnk
        .MousePointer = fmMousePointerCustom
        .MouseIcon = LoadPicture("C:\WINDOWS\Cursors\harrow.cur") 'idem avec ....\aero_link_l.cur
    End With
   
End Sub
Lorsque j’exécute ce code, au survol du textbox désiré (tbxLnk), j'ai une erreur car Excel (ou windows) ne semble pas être en mesure d'exploiter les fichiers en .cur
J'ai aussi un message d'erreur lorsque j'essaye de renseigner le champ MouseIcon de la fenêtre proprété de mon Control. Il n'accepte pas les fichiers *.cur

Pourtant, sur les forums, les utilisateurs semblent satisfaits de cette procédure mais comme les fils datent un peu, c'était peut être valable sur d'anciennes version de windows (je suis sous 8 et mon fichier est destiné à être utilisé sous 7) ou de MS Office.

Zorg
 

Jacky67

XLDnaute Accro
Bonjour à tous,

J'ai ici et là cherché comment faire apparaître l'icone de la souris en forme de doigt à l'instar de ce qu'il se passe au survol d'un lien hypertext.

j'ai à plusieurs reprises trouvé ce type de procédure avec en argument du MouseIcon un fichier *.cur

VB:
Private Sub tbxLnk_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

    With tbxLnk
        .MousePointer = fmMousePointerCustom
        .MouseIcon = LoadPicture("C:\WINDOWS\Cursors\harrow.cur") 'idem avec ....\aero_link_l.cur
    End With

End Sub
Lorsque j’exécute ce code, au survol du textbox désiré (tbxLnk), j'ai une erreur car Excel (ou windows) ne semble pas être en mesure d'exploiter les fichiers en .cur
J'ai aussi un message d'erreur lorsque j'essaye de renseigner le champ MouseIcon de la fenêtre proprété de mon Control. Il n'accepte pas les fichiers *.cur

Pourtant, sur les forums, les utilisateurs semblent satisfaits de cette procédure mais comme les fils datent un peu, c'était peut être valable sur d'anciennes version de windows (je suis sous 8 et mon fichier est destiné à être utilisé sous 7) ou de MS Office.

Zorg
Bonjour,
"harrow.cur" n'existe pas chez moi.==>peut-être larrow.Cur"
Essaye comme ceci
Code:
Private Sub tbxLnk_Enter()
With tbxLnk
  .MousePointer = fmMousePointerCustom
  .MouseIcon = LoadPicture("C:\WINDOWS\Cursors\aero_helpsel_xl.cur")
End With
End Sub
ou
Code:
Private Sub tbxLnk_Enter()
With tbxLnk
  .MousePointer = fmMousePointerCustom
  .MouseIcon = LoadPicture("C:\WINDOWS\Cursors\larrow.cur")
End With
End Sub
 
Dernière édition:

zorglubxp

XLDnaute Junior
Merci Jacky,

mais comme je l'explique le problème ne vient pas du harrow.cur (c'est celui qui était indiqué sur le bout de code que j'ai trouvé sur le forum) ou du aero_link_l.cur (que j'ai mis en commentaire de mon code et qui correspond au symbole que je souhaite) mais plus selon moi à l'extension .cur

Edit :
Avant de valider ce message, je me suis dit que j'allais quand même tester ton code
Même erreur, mais chose surprenante, je n'ai pas de aero_helpsel dans mon dossier Windows\Cursors. Peut-être avons-nous des versions différentes de Windows ?

Chose encore plus bizarre, c'est que dans l'attribut MouseIcon de la fenêtre propriété de ma TextBox, je parviens à valider certains fichier *.cur, mais pas d'autres.
Et pour couronner le tout, les icônes affichés depuis ma fenêtre d'explorateur Windows et ceux depuis la fenêtre propriété d'Excel sont différents pour le même fichier sélectionné o_O ????

C'est à ne rien y comprendre !
 

zorglubxp

XLDnaute Junior
Bon plutôt que de faire un 2nd Edit, je vais mettre les nouvelle info ici :

Tout d'abord, Erreur de ma part, aero_helpsel_xl.cur existe bien chez moi mais comme dit plus haut, il me génère une erreur que ce soit dans le code ou dans les propriétés.

Le larrow.cur existe aussi contrairement au harrow (peut être était-ce bien une erreur de frappe) et celui ci fonctionne, mais ce n'est pas une main mais une flèche un peu plus grosse (l certainement comme Large)

Bref lorsque je clic sur parcourir dans le champ MouseIcon de la fenêtre de propriété de ma TextBox, et que je compare au dossier Windows/Cursors, ça me donne ça :

Il y a vraiment des choses bizarres.
La majeure partie des .cur accessibles directement depuis la fenêtre de propriété (à gauche sur la capture) ne fonctionnent pas !!!

Edit :
Les icônes qui s'affichent, lorsqu'Excel accepte le fichier .cur, correspondent bien à l'icone visible sur la fenêtre de gauche et non celle de droite (ex help_r.cur qui est malheureusement une flèche noire avec un point d'interrogation)
 
Dernière édition:

zorglubxp

XLDnaute Junior
Merci Jacky

Oui, ton fichier fonctionne bien chez moi avec larrow.cur, mais chez toi ça fait bien une main avec l'index tendu (comme pour un lien hypertext ) ?
Car chez moi, ça fait juste une flèche plus grosse :(
 

Jacky67

XLDnaute Accro
Merci Jacky

Car chez moi, ça fait juste une flèche plus grosse :(
Re..
Certes, c'est ce qui est annoncé par Windows les mains seraient la série "aero"
Mais pas d'erreur de excel, ce qui était me semble t-il était le problème initial.
 
Dernière édition:

zorglubxp

XLDnaute Junior
J'ai ici et là cherché comment faire apparaître l'icone de la souris en forme de doigt à l'instar de ce qu'il se passe au survol d'un lien hypertext.
Mon souhait : Avoir l'icône de la main avec le doigt tendu ;)

Re..
Certes, c'est ce qui est annoncé par Windows les mains serait la série "aero"
Mais pas d'erreur de excel, ce qui était me semble t-il était le problème initial.
Tu ne réponds pas à ma question d'avant, ça affiche quoi chez toi
Une grosse flèche ou la main avec le doigt tendu ???

Dialogue de sourd :p
 

13GIBE59

XLDnaute Accro
Bonjour tout le monde.
Chez moi, excel 2016, le gentil fichier de jacky67 me donne une grosse flèche (d'ailleurs, larrow signifie très certainement Large Arrow, que je ne traduirai pas...) ;)
 

zorglubxp

XLDnaute Junior
Ok merci 13GIBE59

c'est bien ce que j'avais traduit aussi et nous avons donc le même comportement. ça me rassure car je commençait à me poser des questions avec en plus Jacky qui ne veut plus me répondre (soit, il a aussi le droit d'avoir une vie en dehors de XLD !)

Bref, c'est donc un retour à la case Départ, comment faire pour avoir cette fichue main ????
 

Modeste geedee

XLDnaute Barbatruc
Bonsour®
Mon souhait : Avoir l'icône de la main avec le doigt tendu ;)


Tu ne réponds pas à ma question d'avant, ça affiche quoi chez toi
Une grosse flèche ou la main avec le doigt tendu ???
:p
il faut d'abord charger une icône curseur dans le répertoire WINDOWS\CURSORS
voir pièce jointe
puis ensuite dans les propriétés de la TextBox

MousePointeur : 99-fmMousePointerCustom
puis encore
MouseIcon : (Icône)
choisir le curseur voulu ( précédemment chargé)
upload_2017-8-21_19-7-38.png
 

Fichiers joints

zorglubxp

XLDnaute Junior
Merci Modeste geedee

On avance !
Le seul soucis avec ta procédure c'est qu'étant donné que mon fichier est destiné à être utilisé par de nombreux utilisateurs, je ne peux pas aller sur chaque poste pour copier le HAND-M.cur que tu m'offre pourtant si gracieusement !

Il faut donc que je me résigne à trouver cette main ou une variante qui fonctionne dans win7 ou MS office 2007 qui est installés sur tous les postes.

Bref, je sais, je suis exigeant :p
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Ce n'est pas tout à fait le curseur demandé, mais il marche.
Il vaut mieux le définir dans les propriétés que dans le code, comme ça il reste.
 

Fichiers joints

zorglubxp

XLDnaute Junior
Bien évidemment, et cela marche...:D
Arghhhhh !
Quelle version de l'aero_link arrives-tu à faire passer ? (normal, L, XL ?)
Passe-t-il directement via la fenêtre propriété ou uniquement par le code VBA ?(normalement, l'effet devrait être le m^me , mais sait on jamais !)
 

zorglubxp

XLDnaute Junior
Bonjour.
Ce n'est pas tout à fait le curseur demandé, mais il marche.
Il vaut mieux le définir dans les propriétés que dans le code, comme ça il reste.
Merci Dranreb

Maintenant, j'ai une belle collection de main, mais lorsque j'ai précisé que mon fichié été destiné à tourner sous win7 alors que je suis sous win 8, j'ai omis un petit détail qui a son importance, c'est que sous win7, il y aura potentiellement 70 PC.

ça fait bcp à mettre à jour :p
 

Dranreb

XLDnaute Barbatruc
Comme dit, si le curseur est mis en place dans les propriétés quand vous l'avez sous la main, plus besoin du fichier .cur pour le faire tourner sur d'autres postes.
 
Haut Bas