Clock in Lieu of Hourglass, but w/o Timer

L

LarryP

Anybody know of an animated clock object I could put on a form to display
when a process is running? Doesn't have to show actual or elapsed time, just
hands going 'round and 'round to tell the user something is really going on.
In some cases during long, multi-step processes I find that the hourglass
comes and goes, and the status bar may or may not show something happening.
When things "go quiet" for awhile some users tend to get impatient and start
pushing buttons. I'm thinking if there were a running clock that I make
visible at the start of the process and invisible at the end, it might be
better. I suppose I could build something involving a timer event, but I
would rather not have that task cluttering up my processor if there's
something off the shelf that just runs itself.
 
K

Klatuu

Basically what you are wanting to do is change the sytem mouse pointer.
There are 15 built in pointers you can get to directly in Access, but to use
a custom pointer, you will need the api code from this site:

http://www.mvps.org/access/api/api0044.htm

You will also need to locate an animated mouse pointer or cursor that looks
like what you want. If you Google Mouse Pointer Downloads, you will have a
whole lot of choices. Beware what you download, particularly for free.
Even when the site cliam no spyware, adware, or viruses, you can't be sure
until you check them out. Hopefully, you have some software that scans for
those sorts of things.
 
F

fredg

Anybody know of an animated clock object I could put on a form to display
when a process is running? Doesn't have to show actual or elapsed time, just
hands going 'round and 'round to tell the user something is really going on.
In some cases during long, multi-step processes I find that the hourglass
comes and goes, and the status bar may or may not show something happening.
When things "go quiet" for awhile some users tend to get impatient and start
pushing buttons. I'm thinking if there were a running clock that I make
visible at the start of the process and invisible at the end, it might be
better. I suppose I could build something involving a timer event, but I
would rather not have that task cluttering up my processor if there's
something off the shelf that just runs itself.

I think you will need to use the timer event to move the clock "hand".
If you decide that's OK, here is code that goes in the Timer event to
show/hide individual line controls each Timer interval.

Set the timer interval to 1000 (for 1 second. Set it higher to move
the 'clock' slower.)

Place a line in the form.
Starting at one end of the above line, add lines, increasing the line
control's width for each line, and 'turning' it so that they look like
clock hands rotating around a center point..
Position at least one end of the line so that they all meet at a
central point. * See my note below.
My test had 8 lines. You would most likely want a few more.
Name each line "Line1", Line2", "Line3" etc.

Change the 9 in the
If intX >= 9 Then
code below to 1 greater than the number of lines you actually use.

Code the Form's Timer event:

Private Sub Form_Timer()
Static lngX As Long
Dim c As Control
For Each c In Me.Section(0).Controls
If TypeOf c Is Line Then
If c.Name = "Line" & lngX + 1 Then
c.Visible = True
Else
c.Visible = False
End If
End If
Next
lngX = lngX + 1

If lngX >= 9 Then
lngX = 0
End If
End Sub

* If you have too much difficulty aligning the lines around a central
point, why not just lay them out vertically alongside one another,
i.e. | | | | | etc.? Add as many as you wish.
They will still turn on and off, and the visible line will appear to
move down the row. Much simpler. Just make sure they are named Line1,
Line2, etc. in the correct order.
 
L

LarryP

Thanks, Fred. I may fiddle around with that and see what I can achieve. I
already have a scrolling "Still working....." marquee thing built that is
similar in concept, based on the Timer event, but I was hoping there's
something out there that wouldn't require Timer (so I can avoid anything that
causes screen flicker or puts an extra load on Access while I'm running
complicated processes). Something like a little video snippet that shows a
stopwatch, hands going around endlessly, not really counting anything
relative to my process, just symbolizing the passage of time to keep bored
users amused. Dave Hargis suggested I look at custom mouse pointers, but I'd
prefer something that "lives" in my Access window so it isn't affected if the
user mouses around outside the window for some reason. Been Googling for the
past hour, but no luck yet.
 
A

Arvin Meyer [MVP]

LarryP said:
Anybody know of an animated clock object I could put on a form to display
when a process is running? Doesn't have to show actual or elapsed time,
just
hands going 'round and 'round to tell the user something is really going
on.
In some cases during long, multi-step processes I find that the hourglass
comes and goes, and the status bar may or may not show something
happening.
When things "go quiet" for awhile some users tend to get impatient and
start
pushing buttons. I'm thinking if there were a running clock that I make
visible at the start of the process and invisible at the end, it might be
better. I suppose I could build something involving a timer event, but I
would rather not have that task cluttering up my processor if there's
something off the shelf that just runs itself.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top