RegisterClass函式功能
函式功能:該函式註冊在隨後調用CreateWindow函式和CreateWindowEx函式中使用的視窗類。 RegisterClass函式己經由函式RegisterClassEx函式來代替,但是,如果不需要設定類的小目標則仍然可以使用RegisterClass函式。
函式原型:ATOM RegisterClass(CONST wndclass *lpWndClass);
RegisterClass參數
參數:
lpWndClass:指向一個WNDCLASS結構的指針。在將它傳遞給函式之前,必須在該結構中填充適當的類屬性。
返回值:如果函式成功,返回值是唯一標識已註冊的類的一個原子;如果函式失敗,返回值為0。若想獲得更多錯誤信息,請調用GetLastError函式。
備註:如果使用RegisterClassA來註冊視窗,應用程式通知系統被註冊類的視窗的訊息使用ANSI字元集的文本和字元參數;如果使用RegisterClassW來註冊視窗,應用程式需要系統以Unicode來傳遞訊息的文本參數。lsWindowUnicode函式使應用程式可以查詢每一個視窗的字元特徵。參看Win32API中的ANSI和Unicode
函式,請查閱Functiont prototype。
應用程式註冊的所有的視窗類在應用程式中止後都為未註冊的類。
Windows 95:所有由DLL註冊的類在DLL卸載後均未註冊的類。
Windows NT:所有由DLL註冊的類在DLL卸載後仍為已註冊的類。
Windows 95:如果WNDCLASSEX結構中的cbWndExtra或cbClsExtra單元包含位元組數超過40個位元組,則RegisterClassEx將失敗。
Windows CE:由lpWndClass參數指向的WNDCLAS結構不支持lpszMenuName域,因為WindowsCE不支持預設選單。
除非使用了WindowsCE的lconcurs組件(這個組件提供了在適當目標平台上的滑鼠支持),否則不能使用由lpWndClass指向的WNDCLASS結構中的hCursor域。
速查:Windows NT:3.1以上版本;Windows:95以上版本:WindowsCE:1.0以上版本;頭檔案:Winuser.h;庫檔案:user32.lib;Unicode:在Windows NT上實現為Unicodee和ANSI兩種版本。
