Mouse Over Message Timing

G

Guest

This is a new question for all - a spin off of the Mouse Over Message. Rick
B hooked me up with info on the ControlTip Text, but I need some further info.

Does anyone know how to change the TIMING of the ControlTip text? I would
like to set it to pop up instantly for some fields. I'm guessing this is an
all-or-none type of adjustment, so does anyone know if there is an alternate
way to have Access present some kind of pop-up form or window based on the
mouse position (it would work the same way as ControlTip Text, but be
instant).

THX!
 
G

Guest

I have done it in the past using labels with Visible/invisible on mouseover
events.

Place a normal label with text you want in it where you want it. Make it
default to invisible. On the control you want, use mouse_over to change the
lable to visible. You can use a timer event or some other event to make it
invisible again.

This event happens immediately so it can be annoying. Remember to place the
label along side the control not over the top of it.

jim at andersonsoftware dot ca
 
G

Guest

Jim,

Where is this mystic mouse_over event? I don't see it in any of the control
properties on my form.

THX!
 
D

Dirk Goldgar

Robert_L_Ross said:
Jim,

Where is this mystic mouse_over event? I don't see it in any of the
control properties on my form.

I imagine he means the MouseMove event.
 
G

Guest

....but how does the mouse move event work? Does it run every time the mouse
is moved, or only when the mouse is moved over the particular control?
 
D

Dirk Goldgar

Robert_L_Ross said:
...but how does the mouse move event work? Does it run every time
the mouse is moved, or only when the mouse is moved over the
particular control?

Each control has its own MouseMove event. So if you want to react when
the mouse is moved over a particular control, you use that control's
MouseMove event. Each section of the form also has a MouseMove event,
so you can use that if you want to react when the control moves off a
control and over the section background.
 
R

Rick Brandt

Dirk said:
Each control has its own MouseMove event. So if you want to react
when the mouse is moved over a particular control, you use that
control's MouseMove event. Each section of the form also has a
MouseMove event, so you can use that if you want to react when the
control moves off a control and over the section background.

But have you ever found MouseMove to be useful for anything? It doesn't
react quickly enough if the mouse is moved too fast and if you move around
on the control without ever leaving its boundaries the event is constantly
firing. That is almost never what a person actually wants. Why they didn't
just give us a true "Hover" or "MouseOver" event like so many other
platforms have is a mystery to me.
 
D

Dirk Goldgar

Rick Brandt said:
But have you ever found MouseMove to be useful for anything? It
doesn't react quickly enough if the mouse is moved too fast and if
you move around on the control without ever leaving its boundaries
the event is constantly firing. That is almost never what a person
actually wants. Why they didn't just give us a true "Hover" or
"MouseOver" event like so many other platforms have is a mystery to
me.

I've never found a need to make it work other than on a test form for
answering questions about it. My *trial* experience is that it can be
used effectively if you keep a fair amount of empty space around the
controls (so that even fast mouse movements can fire the event for the
section), and if you set and check a static state variable in the
MouseMove events so that you aren't continually reacting to the user's
mouse movements while over the contol or section -- only to the change
in state.

True, a MouseOver or Hover event would have been nice.
 
R

Rick Brandt

Dirk said:
I've never found a need to make it work other than on a test form for
answering questions about it. My *trial* experience is that it can be
used effectively if you keep a fair amount of empty space around the
controls (so that even fast mouse movements can fire the event for the
section), and if you set and check a static state variable in the
MouseMove events so that you aren't continually reacting to the user's
mouse movements while over the contol or section -- only to the change
in state.

I've tried those strategies and they "sort of" work, but no matter how big I
make the section around the control I still can easily move across that too
fast for any "undoing" code to have a chance to fire and of course if your
form is fairly crowded (aren't they all?) and you want to use MouseMove on
an adjacent control then you will be pretty limited on how much section
space you can leave exposed anyway.

I've never *really needed* the event for anything. I was just wondering if
I was missing some obvious way to make it actually useful.
 
D

Dirk Goldgar

Rick Brandt said:
I've never *really needed* the event for anything. I was just
wondering if I was missing some obvious way to make it actually
useful.

No, I don't think so.
 
G

Guest

On the 'useful' side, my plan is to have a footer section with an unbound
field. When you mouse over a field, it will populate that field with a
detailed instruction.

This way, no pop up forms interfere, but I still get the benefit of the
function without having to tab into the function and use the status bar to
display.

THX tynerr, Dirk and Rick for the help!
 
D

Dirk Goldgar

Robert_L_Ross said:
On the 'useful' side, my plan is to have a footer section with an
unbound field. When you mouse over a field, it will populate that
field with a detailed instruction.

This way, no pop up forms interfere, but I still get the benefit of
the function without having to tab into the function and use the
status bar to display.

That sounds pretty clever to me, if you have a need to give instructions
like that. You could also use the control's GotFocus event to show the
instructions, in case the user tabs into it without using the mouse.
 
G

Guest

I also integrated that into my form. If the user tabs into a button, the
labels for specific fields highlight to indicate data needed to perform the
query/report. If the user passes the mouse over the buttons, the same field
labels highlight.

I didn't want to depend on the tab function, as some of my users are more
mouse-oriented.
 
D

Dirk Goldgar

Robert_L_Ross said:
I also integrated that into my form. If the user tabs into a button,
the labels for specific fields highlight to indicate data needed to
perform the query/report. If the user passes the mouse over the
buttons, the same field labels highlight.

I didn't want to depend on the tab function, as some of my users are
more mouse-oriented.

Sounds good. <tucks idea away for future use>
 
S

Stephen Lebans

If you want to use your method for a form in Continuous view see:
http://www.lebans.com/conformscurcontrol.htm
ContinuousFormsCurrentRow.zip is a class that allows you to
programmatically access the contents of a bound control, as the user
moves their Mouse, but the control does not have the focus. For Forms in
Continuous View.


To have complete control over the Tooltip message see:
http://www.lebans.com/tooltip.htm
A2KToolTip.zip is a database containing both an API and Form based
ToolTip solutions. The Form based solution can be used for forms in
DataSheet view.

Enhanced features include:

Selectable delay times for Toolltip to first appear
Selectable delay times for Tooltip to dissappear
Selectable Text Color
Selectable Background Color
Selectable Margins
Specify Tooltip size
Add a title to the Tooltip in Bold
Selectable Icon for the Tooltip
ToolTips for Lines, Boxes, any rectangular area on your Form

--

HTH
Stephen Lebans
http://www.lebans.com
Access Code, Tips and Tricks
Please respond only to the newsgroups so everyone can benefit.
 

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