Francisco Tapia
fhtapia at gmail.com
Wed Sep 15 12:52:20 CDT 2004
thanks for the tips Ken, I will test out a couple of these ideas On Wed, 15 Sep 2004 12:36:49 -0500, Ken Ismert <kismert at texassystems.com> wrote: > > Francisco, > > General approach: > > In an Access form, I have found no simple way to determine when the mouse > has moved off of a control. The idea then, is to trap MouseMove events for > all controls and sections. When a control that you don't want to animate > receives a MouseMove, it must tell all controls that you are animating to > turn off their backcolor. > > A few quick thoughts: > > * No need for the hidden box - just use the label's own BackColor property > > * You will need perhaps three objects: > 1. MouseOn object - sinks MouseMove event for Labels, TextBoxes, etc. Has > two functions. First, when it receives a MouseMove event, it changes the > control's BackColor 'on' if it is 'off', and notifies the MouseManager to > turn 'off' all other controls. Second, turns 'off' its backcolor when > requested by MouseManager. > 2. MouseOff object - sinks MouseMove events for Sections, Labels, > TextBoxes, etc. Includes all controls on the form that you don't want to > animate. Has one function: when it receives a MouseMove event, it notifies > the MouseManager to turn 'off' all other controls > 3. MouseManager object - maintains two collections: a MouseOn object > collection, and a MouseOff object collection. Has methods for adding a > MouseOn and a MouseOff object to each collection. Has a method which loops > through all MouseOn objects, telling them to turn their backcolors off, > except for the active one, if any. It also has a Destruct method which sets > both collections to nothing. > > * When loading, the form then must create the MouseManager object, and tell > it to add all controls to either the MouseOn or MouseOff collections. When > unloading, the form must destroy the MouseManager object. > > Finally, you may end up disappointed with the quality of the animation you > get after all this effort. It is possible to move the mouse fast enough that > none of the controls get a MouseMove event, leaving one of the controls > highlighted, even though your cursor is off the form. > > -Ken > > > > -----Original Message----- > From: fhtapia at gmail.com [mailto:fhtapia at gmail.com] > Sent: Wednesday, September 15, 2004 10:28 AM > To: Access Developers discussion and problem solving > Subject: [AccessD] Objects.... > > So I have a label class that has a function to turn the mouse icon to > a hand so users know it's a clickable item. I'd like to duplicate a > MouseOver event, so for that I'm going to place a hidden box under the > labels so when the mouse wanders off, I can change the color off > again... > > I'd like to wrap the box into a class, but I'm having difficulty > envisioning how I'd call all the label class objects to change back to > the default color. > > help tips and hints appreciated... doc, url links are appreciated even more > :D > > btw, new version of firefox is out for those that don't know... this > is version 1.0 very very nice :) > -- > -Francisco > "Rediscover the web" > http://www.mozilla.org/products/firefox/ > ttp://spreadfirefox.com/community/?q=affiliates&id=792&t=86 > > > -- > _______________________________________________ > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- -Francisco "Rediscover the web" http://www.mozilla.org/products/firefox/ ttp://spreadfirefox.com/community/?q=affiliates&id=792&t=86