AfxRegisterWndClass

AfxRegisterWndClass是函式原型為UINT nClassStyle的函式,AfxRegisterWndClass使您可以註冊您的視窗類。

基本介紹

  • 外文名:AfxRegisterWndClass
  • 函式原型:UINT nClassStyle
  • 函式參數:nClassStyle
  • 函式返回值:一個 NULL 終止的字元串
函式原型,函式參數,函式返回值,備註,示例,要求,參考,概念,

百科名片

AfxRegisterWndClass使您可以註冊您的視窗類。

函式原型

LPCTSTR AFXAPI AfxRegisterWndClass(
UINT nClassStyle,
HCURSOR hCursor = 0,
HBRUSH hbrBackground = 0,
HICON hIcon = 0
);

函式參數

nClassStyle:指定樣式的視窗類樣式或組合,創建使用按位或 ( |) 運算符,視窗類的。 有關類樣式列表,請參見。 Windows SDK的 WNDCLASS 結構。 如果 該參數為NULL,視窗將會設定以下的默認值
*設定滑鼠格式為CS_DBLLCKS,設定該屬性意味著當在視窗上雙擊的時候視窗處理函式將會受到雙擊訊息
*設定滑鼠的游標形式為Windows的標準的IDC_ARROW
*設定視窗的背景為NULL,也就是指該視窗不會擦除它的背景
*設定視窗的ICON為Windows標準的waving_flag的ICON
hCursor:指定句柄在每個視窗上安裝游標資源創建從視窗類。 如果使用 0默認值,您將收到標準 IDC_ARROW 游標。
hbrBackground:指定句柄在每個視窗上安裝畫筆資源創建從視窗類。 如果使用 0默認值,您將具有一個 NULL 背景畫筆,並且,如果您的視窗中,默認情況下,在處理 WM_ERASEBKGND時,不會清除其背景。
hIcon:指定句柄在每個視窗上安裝圖示資源創建從視窗類。 如果使用 0默認值,您將收到該條件,揮動標誌 windows 徽標圖示。

函式返回值

包含類名稱的一個 NULL 終止的字元串。 可以將該類命名為在 CWnd 或其他 CWnd-派生類的 創建 成員函式創建一個視窗。

備註

多個 Microsoft 基礎類庫的註冊標準 windows 為您自動類別。 ,如果需要註冊視窗類,請調用此函式。
類註冊的名稱由 AfxRegisterWndClass 僅取決於參數。 如果調用 AfxRegisterWndClass 具有相同的參數的多次,它在的類第一次調用只註冊。 對的後續調用具有相同的參數的AfxRegisterWndClass 返回已註冊的 classname。
如果調用 CWnd 派生的多執行緒的 AfxRegisterWndClass 類具有相同的參數,而不是獲取每個類的單獨視窗類,每個類都共享相同的視窗類。 ,如果使用,則可能會出現問題CS_CLASSDC 類樣式。 而不是多個 CS_CLASSDC 視窗類,則最終獲取一 CS_CLASSDC 視窗類和使用該類共享相同的 DC 的所有 C++ 視窗。 若要避免此問題,請調用註冊類。
請參見技術說明 TN001:windows選件類註冊 有關 windows 類註冊和 AfxRegisterWndClass 功能的更多信息。

示例

CString strMyClass;// load stock cursor, brush, and icon for// my own window classtry{ strMyClass = AfxRegisterWndClass( CS_VREDRAW | CS_HREDRAW, ::LoadCursor(NULL, IDC_ARROW), (HBRUSH) ::GetStockObject(WHITE_BRUSH), ::LoadIcon(NULL, IDI_APPLICATION));}catch (CResourceException* pEx){ AfxMessageBox(_T("Couldn't register class! (Already registered?)")); pEx->Delete();}

要求

Header: afxwin.h

參考

CWnd::Create
CWnd::PreCreateWindow
WNDCLASS
AfxRegisterClass

概念

MFC宏和Globals

相關詞條

熱門詞條

聯絡我們