Beware of mouseenter. In my experience, when the mouse is moving fast
mouseenter sometimes doesn't get sent (this ought to be labeled as a
bug). Mousemove is more reliable, though it will get called
repeatedly. Unless you are doing something very complex on mousemove,
however, it won't slow anything down.
-- Peter
Peter M. Brigham
pmb...@gmail.com
http://home.comcast.net/~pmbrig
On Oct 23, 2010, at 4:12 PM, Ian McKnight wrote:
Do you know I never really thought about using either mouseenter or
mousemove :)
As I was thinking about various ways to solve my problem it just
seemed
'natural' to do something when the mouse was within the button area
and I
fixed on that. I will alter my code to use mouseEnter because I like
the
simplicity of the behavior not requiring any code in the buttons but
I have
learned a useful tip about mouseWithin and mouseMove.
Thanks again.
On 23 October 2010 19:00, Peter Brigham MD <pmb...@gmail.com> wrote:
On Oct 23, 2010, at 11:41 AM, André Bisseret wrote:
Le 23 oct. 10 à 16:29, Ian McKnight a écrit :
Hi Andre
It does help when you read the manual :) I did read it but I
missed the
significance of the last line!
Anyway problem is solved all I need do is pass the mouseWithin
message in
each button - not a great price to pay.
Ian,
Just curious, why do you prefer mouseWithin to mouseEnter or
mouseMove?
(with one of these, you should not have to "pay any price" ;-)),
should
you?
I always use mousemove for this kind of thing, for that exact
reason -- no
mousemove is sent unless the object itself has a mousemove handler,
which is
cumbersome if you want some generic behavior when the mouse is
within any
button, for instance.
André
And thank you for your very quick reply.
On 23 October 2010 15:01, André Bisseret
<andre.bisse...@wanadoo.fr>
wrote:
Bonjour Ian,
I just tried the following
- created:
- a stack
- a group "grButton" of 3 buttons: Button1, Button2, Button3
- another group "grBtn" of 3 buttons: Btn1, Btn2, Btn3
- grouped the two groups in a super group "grGlobal"
- a button "BtnBehavior"
- a field "fldTarget"
- put the following handler in the script of "BtnBehavior":
on mouseWithin
put the short name of the target into fld "fldTarget"
end mouseWithin
Finally i set the behavior of grp "grGlobal" to the long id of btn
"btnBehavior" of this card.
Hoping that replicate your problem,
Well:
Does not work with mouseWithin
But that works with other messages: with mouseUp, with
mouseDown, with
mouseMove, with mouseEnter
Seems that the explanation is the last line of the doc on
"mouseWithin"
in
the Dictionary:
Note: If there is no mouseWithinhandler in the target
object'sscript,
no
mouseWithinmessage is sent, even if there is a
mouseWithinhandler in an
object that's further along the message path.
HTH
Best regards from Grenoble
André
Le 23 oct. 10 à 13:19, Ian McKnight a écrit :
Hi
I have a number of buttons which are grouped together, and then
this
group
is grouped with other similar groups to form a super-group. I
have in
excess
of 300 buttons then that each represent a date. When I put the
mouse
over
any one of the buttons I want to access an array and display the
relevant
information for that day in a separate field. I have a
mouseWithin
handler
to access the data.
When the mouseWithin handler is in the script of the actual
button all
works
as it should.
When I move the script to a separate button and set the
behavior of my
original button to it - nothing happens. The Inspector shows the
behavior
location correctly.
There are no other mouseWithin handlers in the message path.
This is the line I used in the message box to set the behavior
of the
first
of my buttons.
set the behavior of btn "checkBx 0" of grp "sepGrp" of cd
"calendar" to
the
long id of btn "behave" of cd "calendar"
I even tried referencing all the groups but still nothing
happened.
set the behavior of btn "checkBx 0" of grp "sepGrp" of grp
"calendargrp"
of
cd "calendar" to the long id of btn "behave" of cd "calendar"
This is the corresponding behavior entry from the Inspector
button id 1647 of stack "timeTable3"
which resolves to the button with my mousewithin script.
I can strip out the core of the script into a separate handler
and
place
it
in the card script but I'd rather not replicate the remaining
code 300+
times (even though it is only a dozen lines) if I can get
behaviors to
work.
I'm using LiveCode 4.5 Bld 1080
Can anyone suggest what I'm doing wrong?
Thanks.
--
Regards
Ian McKnight
iangmckni...@gmail.com
=======================
-- Peter
Peter M. Brigham
pmb...@gmail.com
http://home.comcast.net/~pmbrig <http://home.comcast.net/%7Epmbrig>
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution
--
Regards
Ian McKnight
iangmckni...@gmail.com
=======================
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution