2 using System
.Windows
.Forms
;
4 // Test basic functionality of the Application and Form class
5 class FormTest
: Form
{
10 public FormTest () : base ()
20 button
= new Button ();
26 button
.Text
= "Button";
29 // - verifies the WndProc can be overridden propery
30 // - verifies the Application.MessageLoop is working properly
31 protected override void WndProc (ref Message m
)
35 // should be true after the Run command is reached
36 Console
.WriteLine ("Application.MessageLoop: " +
37 Application
.MessageLoop
);
40 public class MouseMoveMessageFilter
: IMessageFilter
{
42 public bool PreFilterMessage(ref Message m
)
44 Console
.WriteLine ("PreFilter(ing) message");
46 if (m
.Msg
== Win32
.WM_MOUSEMOVE
) {
47 Console
.WriteLine ("captured mousemove");
55 static public void Test1 ()
57 MessageBox
.Show ("test derived form");
58 FormTest form
= new FormTest ();
59 MouseMoveMessageFilter f
= new MouseMoveMessageFilter();
60 Application
.AddMessageFilter (f
);
63 Console
.WriteLine ("Application.MessageLoop: " +
64 Application
.MessageLoop
);
66 Application
.Run (form
);
67 Application
.RemoveMessageFilter (f
);
70 static public void Test2 ()
72 MessageBox
.Show ("test non-derived form, ctrl-c from console to quit");
73 Form form
= new Form ();
75 Application
.DoEvents ();
79 static public int Main (String
[] args
)