複製鏈接
請複製以下鏈接發送給好友

RegisterClass

鎖定
RegisterClass註冊後再調用CreateWindow函數和CreateWindowEx函數中使用的窗口類。 RegisterClass函數己經由函數RegisterClassEx函數來代替,但是,如果不需要設置小圖標則仍然可以使用RegisterClass函數。 [1] 
中文名
RegisterClass
函數功能
註冊窗口類
函數定義
ATOM RegisterClass
參    數
指向一個WNDCLASS結構的指針

RegisterClass函數定義

ATOM RegisterClass(__inCONSTWNDCLASS* lpWndClass);

RegisterClass參數

lpWndClass:指向一個WNDCLASS結構的指針。在將它傳遞給函數之前,必須在該結構中填充適當的類屬性

RegisterClass返回值

ATOM類型為Windows中定義的新數據類型,其即unsigned short類型,在<WinDef.h>中的定義如下:
typedef WORD ATOM;
typedef unsigned short WORD;
如果函數成功,返回值是唯一標識已註冊的類的一個原子;如果函數失敗,返回值為0。若想獲得更多錯誤信息,請調用GetLastError函數。

RegisterClass其他信息

如果使用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兩種版本。
參考資料