1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html> 3 4<head> 5<title>Windows Interface Reference: Class structure</title> 6</head> 7 8<body> 9 10<h1>Class</h1> 11 12<p>The Class structure contains functions to register custom classes as well as the 13definitions for the standard Windows classes.</p> 14 15<p> </p> 16 17<pre>structure Class: 18sig 19 type HWND and Message and HINSTANCE and HBRUSH and HICON and HCURSOR and HGDIOBJ 20 21 datatype LRESULT = LRESINT of int | LRESHANDLE of HGDIOBJ 22 23 datatype 'a ATOM = 24 Registered of {proc: HWND * Message * 'a -> LRESULT option * 'a, className: string} 25 | SystemClass of string 26 27 val Button : unit ATOM 28 val ComboBox : unit ATOM 29 val ComboLBox : unit ATOM 30 val DDEMLEvent : unit ATOM 31 val <a 32name="Edit">Edit</a> : unit ATOM 33 val ListBox : unit ATOM 34 val MDIClient : unit ATOM 35 val ScrollBar : unit ATOM 36 val Static : unit ATOM 37 38 structure Style : 39 sig 40 include BIT_FLAGS 41 42 val CS_BYTEALIGNCLIENT : flags 43 val CS_BYTEALIGNWINDOW : flags 44 val CS_CLASSDC : flags 45 val CS_DBLCLKS : flags 46 val CS_GLOBALCLASS : flags 47 val CS_HREDRAW : flags 48 val CS_KEYCVTWINDOW : flags 49 val CS_NOCLOSE : flags 50 val CS_NOKEYCVT : flags 51 val CS_OWNDC : flags 52 val CS_PARENTDC : flags 53 val CS_SAVEBITS : flags 54 val CS_VREDRAW : flags 55 end 56 57 type 'a WNDCLASSEX = 58 {style: Style.flags, 59 wndProc: HWND * Message * 'a -> LRESULT option * 'a, 60 hInstance: HINSTANCE, 61 hIcon: HICON option, 62 hCursor: HCURSOR option, 63 hbrBackGround: HBRUSH option, 64 menuName: Resource.RESID option, 65 className: string, 66 hIconSm: HICON option} 67 68 val <a 69name="RegisterClassEx">RegisterClassEx</a> : 'a WNDCLASSEX -> 'a ATOM 70 71 val <a 72name="UnregisterClass">UnregisterClass</a> : string * HINSTANCE -> unit 73 val GetClassName : HWND -> string 74 val GetClassInfoEx: HINSTANCE * string -> 'a WNDCLASSEX 75 end</pre> 76</body> 77</html> 78