-----------------------------------------------------------
New Message on BDOTNET
-----------------------------------------------------------
From: LovedJohnySmith
Message 4 in Discussion
Shital: If work were a good thing, Your boss would take it all
from you. Please have a look at the following code snippets for
Application.IDLE implementation
namespace SampleAppIdle
{
/// <summary>
/// Summary description for Class1.
/// </summary>
public class BetterMouser : UserControl
{
private bool idleSet; // we are catching the Application.Idle event
private MouseEventArgs savedMouseMove; // last mouse move
private EventHandler idleHandler; // to avoid creating over and over
public event MouseEventHandler IdleMouseMove; // called when idle, to
avoid redundant events
Public BetterMouser()
{
idleHandler = new EventHandler(ApplicationIdle);
}
protected override void OnMouseDown(MouseEventArgs e)
{
savedMouseMove = null;
base.OnMouseDown(e);
}
protected override void OnMouseMove(MouseEventArgs e)
{
savedMouseMove = e;
// allow client to only process the mouse events when idle -- otherwise,
// we process a lot of mouse events that are unnecessary
if (!idleSet)
{
idleSet = true;
Application.Idle += idleHandler;
} base.OnMouseMove(e);
}
protected override void OnMouseUp(MouseEventArgs e)
{
savedMouseMove = null;
base.OnMouseUp(e);
}
private void ApplicationIdle(object sender, EventArgs e)
{
idleSet = false;
Application.Idle -= idleHandler;
if (savedMouseMove != null)
{
OnIdleMouseMove(savedMouseMove);
savedMouseMove = null;
}
}
protected virtual void OnIdleMouseMove(MouseEventArgs e)
{
if (IdleMouseMove != null) IdleMouseMove(this, e);
}
} Thanx, Smith
-----------------------------------------------------------
To stop getting this e-mail, or change how often it arrives, go to your E-mail
Settings.
http://groups.msn.com/bdotnet/_emailsettings.msnw
Need help? If you've forgotten your password, please go to Passport Member
Services.
http://groups.msn.com/_passportredir.msnw?ppmprop=help
For other questions or feedback, go to our Contact Us page.
http://groups.msn.com/contact
If you do not want to receive future e-mail from this MSN group, or if you
received this message by mistake, please click the "Remove" link below. On the
pre-addressed e-mail message that opens, simply click "Send". Your e-mail
address will be deleted from this group's mailing list.
mailto:[EMAIL PROTECTED]