using System;
public class KeyEventArgs : EventArgs
{
public char ch;
}
public delegate void KeyHandler(object source,KeyEventArgs arg);
public class KeyEvent
{
public event KeyHandler KeyPress;
public void OnKeyPress(char key)
{
KeyEventArgs k = new KeyEventArgs();
if (KeyPress != null)
{
k.ch = key;
KeyPress(this, k);
}
}
}
public class ProcessKey
{
public void Process(object source, KeyEventArgs arg)
{
Console.WriteLine("Received keystroke:"+arg.ch);
}
}
public class CountKeys
{
public int count = 0;
public void Process(object source, KeyEventArgs arg)
{
count++;
//Console.WriteLine(count.ToString());
}
}
public class KeyEventDemo
{
static void Main(string[] args)
{
KeyEvent kevt = new KeyEvent();
ProcessKey pk = new ProcessKey();
CountKeys ck = new CountKeys();
char ch;
kevt.KeyPress += new KeyHandler(pk.Process);
kevt.KeyPress += new KeyHandler(ck.Process);
Console.WriteLine("Enter some characters."+"Enter a period to stop.");
do
{
ch = (char)Console.Read();
kevt.OnKeyPress(ch);
}
while (ch != '.');
Console.WriteLine(ck.count + "keys pressed.");
}
}
public class KeyEventArgs : EventArgs
{
public char ch;
}
public delegate void KeyHandler(object source,KeyEventArgs arg);
public class KeyEvent
{
public event KeyHandler KeyPress;
public void OnKeyPress(char key)
{
KeyEventArgs k = new KeyEventArgs();
if (KeyPress != null)
{
k.ch = key;
KeyPress(this, k);
}
}
}
public class ProcessKey
{
public void Process(object source, KeyEventArgs arg)
{
Console.WriteLine("Received keystroke:"+arg.ch);
}
}
public class CountKeys
{
public int count = 0;
public void Process(object source, KeyEventArgs arg)
{
count++;
//Console.WriteLine(count.ToString());
}
}
public class KeyEventDemo
{
static void Main(string[] args)
{
KeyEvent kevt = new KeyEvent();
ProcessKey pk = new ProcessKey();
CountKeys ck = new CountKeys();
char ch;
kevt.KeyPress += new KeyHandler(pk.Process);
kevt.KeyPress += new KeyHandler(ck.Process);
Console.WriteLine("Enter some characters."+"Enter a period to stop.");
do
{
ch = (char)Console.Read();
kevt.OnKeyPress(ch);
}
while (ch != '.');
Console.WriteLine(ck.count + "keys pressed.");
}
}