Key Timer : Key Event « Event « C# / C Sharp






Key Timer

Key Timer
/*
Professional Windows GUI Programming Using C#
by Jay Glynn, Csaba Torok, Richard Conway, Wahid Choudhury, 
   Zach Greenvoss, Shripad Kulkarni, Neil Whitlow

Publisher: Peer Information
ISBN: 1861007663
*/
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Runtime.InteropServices;

namespace Wrox.ProgrammingWindowsGUI.Chapter5
{
    /// <summary>
    /// Summary description for Form1.
    /// </summary>
    public class KeyTimer : System.Windows.Forms.Form
    {
        /// <summary>
        /// Required designer variable.
        /// </summary>
        private System.ComponentModel.Container components = null;
        private uint start = 0;
        private uint stop = 0;

        [DllImport("kernel32.dll")]
        public static extern uint GetTickCount();

        public KeyTimer()
        {
            //
            // Required for Windows Form Designer support
            //
            //InitializeComponent();

            //
            // TODO: Add any constructor code after InitializeComponent call
            //
        }

        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        protected override void Dispose( bool disposing )
        {
            if( disposing )
            {
                if (components != null) 
                {
                    components.Dispose();
                }
            }
            base.Dispose( disposing );
        }

        #region Windows Form Designer generated code
        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {
            // 
            // Form1
            // 
            this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
            this.ClientSize = new System.Drawing.Size(292, 142);
            this.Name = "Form1";
            this.Text = "Form1";

        }
        #endregion

        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main() 
        {
            Application.Run(new KeyTimer());
            
        }

        protected override void OnKeyDown(KeyEventArgs args)
        {
            start = GetTickCount();
        }

        protected override void OnKeyUp(KeyEventArgs args)
        {
            stop = GetTickCount();
            uint elapsed = (stop - start);
            MessageBox.Show(Convert.ToString(args.KeyData)+", time elapsed: "+Convert.ToString(elapsed)+" msecs");
        }
    }
}


           
       








Related examples in the same category

1.Event system explained in detail
2.Close Form with Pressing X key
3.Check KeyCode from KeyEventArgs
4.Shift key pressedShift key pressed
5.Control Key pressedControl Key pressed
6.Alt key pressedAlt key pressed
7.Get Async Key StateGet Async Key State
8.Get Key action informationGet Key action information
9.Displaying information about the key the user pressedDisplaying information about the key the user pressed
10.Displays a key pressed by the userDisplays a key pressed by the user
11.Full screen and KeyEvent and MouseEvent
12.Key PressKey Press
13.Keyboard SampleKeyboard Sample