AfxRegisterWndClass
Umožňuje registrovat vlastní třídy okna.
LPCTSTR AFXAPI AfxRegisterWndClass(
UINT nClassStyle,
HCURSOR hCursor = 0,
HBRUSH hbrBackground = 0,
HICON hIcon = 0
);
Parametry
nClassStyle
Určuje styl Windows třídy nebo kombinaci stylů vytvořené pomocí (bitový operátor OR**|**) operátor pro třídu okna.Seznam stylů tříd naleznete WNDCLASS struktury v Windows SDK.Pokud NULL, výchozí nastavení bude nastavena takto:Nastaví styl myši na CS_DBLCLKS, které odešle, poklepejte na položku zprávy okno postupu při poklepání myší.
Šipka styl kurzoru se nastaví na standardní Windows IDC_ARROW.
Nastaví pozadí stopy NULL, takže okno není smaže jeho pozadí.
Určuje ikonu kadeření příznak, standardní ikonu logo systému Windows.
hCursor
Určuje popisovač prostředku kurzor nainstalován v každém okně vytvořené z třídy okna.Pokud použijete výchozí 0, dostanete standardní IDC_ARROW kurzoru.hbrBackground
Určuje popisovač prostředku stopy nainstalován v každém okně vytvořené z třídy okna.Pokud použijete výchozí 0, bude mít NULL pozadí stopy a bude vaše okno, ve výchozím nastavení nelze vymazat pozadí při zpracování WM_ERASEBKGND.hIcon
Určuje popisovač prostředku ikonu nainstalován v každém okně vytvořené z třídy okna.Pokud použijete výchozí 0, dostanete kadeření příznak, standardní ikonu logo systému Windows.
Vrácená hodnota
Zakončený řetězec obsahující název třídy.Předáte název třídy vytvořit členské funkce v CWnd nebo jiných CWnd -odvozené třídy vytvořit okno.Název je vytvořen pomocí knihovny Microsoft Foundation Class.
[!POZNÁMKA]
Vrácená hodnota je ukazatel na statické vyrovnávací paměti.Chcete-li uložit tento řetězec přiřadit ke CString proměnné.
Poznámky
Knihovna tříd Microsoft Foundation automaticky zaregistruje několik tříd standardní okno.Pokud chcete registrovat vlastní třídy okna volání této funkce.
Název zaregistrován pro třídy AfxRegisterWndClass závisí parametry.Při volání AfxRegisterWndClass několikrát s shodné parametry ji registroval pouze třídy první volání.Následných výzev k AfxRegisterWndClass s parametry shodné jednoduše vrátit NázevTřídy již zaregistrován.
Při volání AfxRegisterWndClass více tříd pomocí stejných parametrů namísto třídy samostatné okno Začínáme pro každou třídu CWnd odvozené třídy sdílí stejnou třídu okna.To může způsobit problémy, pokud CS_CLASSDC třídy styl je použit.Namísto více CS_CLASSDC třídy okna skončíte s jedním CS_CLASSDC a všechna okna C++, že třída sdílet stejný řadič domény používající třídu okna.Chcete-li se tomuto problému vyhnout, volání AfxRegisterClass zaregistrovat tuto třídu.
Odkazují na technické TN001: Registrace třídy okna Další informace o okně registrace třídy a AfxRegisterWndClass funkce.
Příklad
CString strMyClass;
// load stock cursor, brush, and icon for
// my own window class
try
{
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();
}
Požadavky
Záhlaví: afxwin.h