OVH Cloud OVH Cloud

Récupération du curseur de départ

4 réponses
Avatar
didierM
Bonjour =E0 tous

voici mon probl=E8me :=20
Dans mes formulaires, je change la forme de mon curseur=20
(en harrow.cur) lorsque je d=E9place la sourie sur des=20
boutons, puis redevient normal (arrow_m.cur), mais cela ne=20
plait pas au utilisateur de la BD, car leur curseur par=20
d=E9faut n'est pas =AB arrow_m.cur =BB, comment faire pour=20
r=E9cup=E9rerai le curseur d'origine et le prendre comme=20
curseur par d=E9faut.=20


Proc=E9dure dans mon module: (pris honteusement sur le site=20
de Raymond)

Public Sub Curseur_Normal()
=20
Curseur =3D LoadCursorFromFile
("Q:\dbASV\cursors\arrow_m.cur")
Call SetSystemCursor(Curseur, OCR_NORMAL)
Call SetCursor(Curseur)
booActiv =3D True
End Sub

4 réponses

Avatar
Raymond [mvp]
Bonjour.

Il faudrait que tu rajoutes les lignes suivantes dans ta procédure:

Declare Function GetCursor Lib "user32.dll" () As Long
Dim holdcursor As Long
Dim retval As Long

holdcursor = GetCursor()
' ici faire le changement
retval = SetCursor(holdcursor) ' recharger ancien curseur

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"didierM" a écrit dans le message de
news:54e601c49188$f9d1c2f0$
Bonjour à tous

voici mon problème :
Dans mes formulaires, je change la forme de mon curseur
(en harrow.cur) lorsque je déplace la sourie sur des
boutons, puis redevient normal (arrow_m.cur), mais cela ne
plait pas au utilisateur de la BD, car leur curseur par
défaut n'est pas « arrow_m.cur », comment faire pour
récupérerai le curseur d'origine et le prendre comme
curseur par défaut.
Avatar
didierM
Merci à Raymond, mais je ne m'ensort pas, j'ai mis

Declare Function GetCursor Lib "user32.dll" () As Long
Dim holdcursor As Long
Dim retval As Long

dans la section déclaration du module, et ce code dans la
fonction pour changer le curseur en main:

Public Sub Curseur_Main()
'**** curseur Main pour les boutons

Curseur = LoadCursorFromFile
("c:windowscursorsharrow.cur")
Call SetSystemCursor(Curseur, OCR_NORMAL)
Call SetCursor(Curseur)
booActiv = True

End Sub

Puis ce code pour le retour au curseur d'origine :

Public Sub Curseur_Normal()

retval = SetCursor(holdcursor)
Call SetSystemCursor(retval, OCR_NORMAL)
Call SetCursor(retval)
booActiv = True

End Sub

mais ça ne fonctionne pas, ou ce trouve le problème?
-----Message d'origine-----
Bonjour.

Il faudrait que tu rajoutes les lignes suivantes dans ta
procédure:


Declare Function GetCursor Lib "user32.dll" () As Long
Dim holdcursor As Long
Dim retval As Long

holdcursor = GetCursor()
' ici faire le changement
retval = SetCursor(holdcursor) ' recharger ancien curseur

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"didierM" a écrit
dans le message de

news:54e601c49188$f9d1c2f0$
Bonjour à tous

voici mon problème :
Dans mes formulaires, je change la forme de mon curseur
(en harrow.cur) lorsque je déplace la sourie sur des
boutons, puis redevient normal (arrow_m.cur), mais cela
ne

plait pas au utilisateur de la BD, car leur curseur par
défaut n'est pas « arrow_m.cur », comment faire pour
récupérerai le curseur d'origine et le prendre comme
curseur par défaut.


.



Avatar
Raymond [mvp]
Bonjour.

je te donne l'api complète à entrer pour remplacer l'autre.
dans le module tu ne changes rien.

Option Compare Database
Option Explicit

Public Declare Function LoadCursorFromFile Lib "user32" Alias
"LoadCursorFromFileA" (ByVal lpFileName As String) As Long
Public Declare Function SetCursor Lib "user32" (ByVal hCursor As Long) As
Long
Public Declare Function GetCursor Lib "user32" () As Long
Declare Function LoadCursor Lib "user32" Alias "LoadCursorA" (ByVal
hInstance As Long, ByVal lpCursorName As Long) As Long

Private Const OCR_NORMAL As Long = 32512
Private Curseur As Long
Dim holdcursor As Long

Public Sub Curseur_Main()
holdcursor = GetCursor()
Curseur = LoadCursorFromFile("c:windowscursorsharrow.cur")
SetCursor (Curseur)
End Sub

Public Sub Curseur_Normal()
Curseur = LoadCursor(0, OCR_NORMAL)
SetCursor (Curseur)
End Sub

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"didierM" a écrit dans le message de
news:5c0001c491f7$9cec0680$
Merci à Raymond, mais je ne m'ensort pas, j'ai mis
Avatar
didierM
Trop fort, merci Raymond (mon dieu et maître)
-----Message d'origine-----
Bonjour.

je te donne l'api complète à entrer pour remplacer
l'autre.

dans le module tu ne changes rien.

Option Compare Database
Option Explicit

Public Declare Function LoadCursorFromFile Lib "user32"
Alias

"LoadCursorFromFileA" (ByVal lpFileName As String) As
Long

Public Declare Function SetCursor Lib "user32" (ByVal
hCursor As Long) As

Long
Public Declare Function GetCursor Lib "user32" () As Long
Declare Function LoadCursor Lib "user32"
Alias "LoadCursorA" (ByVal

hInstance As Long, ByVal lpCursorName As Long) As Long

Private Const OCR_NORMAL As Long = 32512
Private Curseur As Long
Dim holdcursor As Long

Public Sub Curseur_Main()
holdcursor = GetCursor()
Curseur = LoadCursorFromFile
("c:windowscursorsharrow.cur")

SetCursor (Curseur)
End Sub

Public Sub Curseur_Normal()
Curseur = LoadCursor(0, OCR_NORMAL)
SetCursor (Curseur)
End Sub

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"didierM" a écrit
dans le message de

news:5c0001c491f7$9cec0680$
Merci à Raymond, mais je ne m'ensort pas, j'ai mis


.