using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
public class frmMouseButtons : System.Windows.Forms.Form {
private System.Windows.Forms.Label lblLeftClick;
private System.Windows.Forms.Label lblRightClick;
private System.Windows.Forms.Label lblMiddleClick;
private System.Windows.Forms.Label lblHover;
public frmMouseButtons() {
this.lblLeftClick = new System.Windows.Forms.Label();
this.lblRightClick = new System.Windows.Forms.Label();
this.lblMiddleClick = new System.Windows.Forms.Label();
this.lblHover = new System.Windows.Forms.Label();
this.SuspendLayout();
this.lblLeftClick.Location = new System.Drawing.Point(8, 8);
this.lblRightClick.Location = new System.Drawing.Point(8, 32);
this.lblRightClick.Size = new System.Drawing.Size(100, 32);
this.lblMiddleClick.Location = new System.Drawing.Point(8, 72);
this.lblHover.Location = new System.Drawing.Point(8, 104);
this.lblHover.MouseEnter += new System.EventHandler(this.lblHover_MouseEnter);
this.lblHover.MouseHover += new System.EventHandler(this.lblHover_MouseHover);
this.lblHover.MouseLeave += new System.EventHandler(this.lblHover_MouseLeave);
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(184, 198);
this.Controls.AddRange(new System.Windows.Forms.Control[] {
this.lblHover,
this.lblMiddleClick,
this.lblRightClick,
this.lblLeftClick});
this.MaximizeBox = false;
this.ResumeLayout(false);
}
protected override void OnMouseDown(MouseEventArgs e) {
switch (e.Button) {
case (MouseButtons.Left):
lblLeftClick.Text = "Left Click";
break;
case (MouseButtons.Middle):
lblLeftClick.Text = "Middle Click";
break;
case (MouseButtons.Right):
lblLeftClick.Text = "Right Click";
break;
case (MouseButtons.XButton1):
lblLeftClick.Text = "XButton1 Click";
break;
case (MouseButtons.XButton2):
lblLeftClick.Text = "XButton2 Click";
break;
}
switch (e.Clicks) {
case 1:
lblMiddleClick.Text = "Single Click";
break;
case 2:
lblMiddleClick.Text = "Double Click!";
break;
default:
lblMiddleClick.Text = "Many clicks!";
break;
}
}
protected override void OnMouseWheel(MouseEventArgs e) {
switch (e.Delta) {
case -360:
lblRightClick.Text = "One Rotation Reverse";
break;
case -720:
lblRightClick.Text = "Two Rotations Reverse";
break;
case 360:
lblRightClick.Text = "One Rotation Forward";
break;
case 720:
lblRightClick.Text = "Two Rotations Forward";
break;
default:
lblRightClick.Text = "Rotation wasn't full turn of wheel";
break;
}
}
protected void lblHover_MouseEnter(object sender, EventArgs e) {
lblRightClick.Text = "One Rotation Forward";
lblHover.Text = "Entering label";
Cursor = Cursors.NoMove2D;
}
protected void lblHover_MouseHover(object sender, EventArgs e) {
lblHover.Text = "Hovering over label";
Cursor = Cursors.Hand;
System.Diagnostics.Debug.WriteLine("hover");
}
protected void lblHover_MouseLeave(object sender, EventArgs e) {
lblHover.Text = "Leaving label";
Cursor = Cursors.Default;
}
[STAThread]
static void Main() {
Application.Run(new frmMouseButtons());
}
}