View Single Post
  #6   Report Post  
Posted to microsoft.public.excel.programming
Gary L Brown Gary L Brown is offline
external usenet poster
 
Posts: 219
Default set cursor with api

No. Haven't tried it.
After looking at the google again, I did notice another difference in code.

Try...
SetCursor LoadCursor(0, lCursor)
instead of
SetCursor (LoadCursor(0, IDC_ARROW))

HTH,
--
Gary Brown

If this post was helpful, please click the ''Yes'' button next to ''Was this
Post Helpfull to you?''.


"RB Smissaert" wrote:

Have you tried this?

Option Explicit
Private Const IDC_ARROW = 32512&
Private Declare Function LoadCursor _
Lib "user32" Alias "LoadCursorA" _
(ByVal hInstance As Long, _
ByVal lpCursorName As Long) As Long
Private Declare Function SetCursor _
Lib "user32" (ByVal hCursor As Long) As Long

Sub test()

Application.Cursor = xlWait

SetCursor (LoadCursor(0, IDC_ARROW))

End Sub

As you can see (with me anyhow), the cursor stays hourglass.


RBS

"Gary L Brown" wrote in message
...
All I can say is that the guy in the thread below (Paul Martin) implied
that
it worked. His code is virtually identical to yours.
Good Luck,
Sincerely,
--
Gary Brown



"RB Smissaert" wrote:

Isn't that just the type definition for a long variable?
In any case I did it like that at one stage and just the same.
I think the trouble is that Excel or VB in general will keep setting the
cursor
back to the original.

RBS


"Gary L Brown" wrote in message
...
I found a google at...
http://groups.google.com/group/micro...6102c2ae 7954

that seems to indicate that you should change
Private Const IDC_ARROW As Long = 32512
to
Private Const IDC_ARROW As Long = 32512&

HTH,
--
Gary Brown

If this post was helpful, please click the ''Yes'' button next to ''Was
this
Post Helpfull to you?''.


"RB Smissaert" wrote:

Need to set the cursor in Excel with the API, so tried this:

Option Explicit
Private Const IDC_ARROW As Long = 32512
Private Declare Function LoadCursor _
Lib "user32" _
Alias "LoadCursorA" _
(ByVal hInstance As Long, _
ByVal lpCursorName As Long) As Long
Private Declare Function SetCursor _
Lib "user32" (ByVal hCursor As Long) As Long

Sub test()

Application.Cursor = xlWait 'just to test it alters the cursor

SetCursor (LoadCursor(0, IDC_ARROW))

End Sub

However nil happens, although there is no error.
Any suggestions how this could be done?


RBS