Třída CContainedWindowT
Tato třída implementuje jiný objekt v okně.
Důležité |
---|
Třídy a jejích členů nelze použít v aplikacích, které spustit v modulu Runtime v systému Windows. |
template <
class TBase= CWindow,
class TWinTraits= CControlWinTraits
>
class CContainedWindowT :
public TBase
Parametry
TBase
Základní třída nové třídy.Výchozí základní třída je CWindow .TWinTraits
Vlastnosti třídy definující styly okna.Výchozí je CControlWinTraits.
[!POZNÁMKA]
CContainedWindow je CContainedWindowT .Pokud chcete změnit základní třídu nebo vlastnosti, CContainedWindowT přímo.
Členy
Veřejné konstruktory
Název |
Description |
---|---|
Konstruktor.Inicializace datové členy určit, které zprávy mapy bude zpracovávat zprávy obsažené okno. |
Veřejné metody
Název |
Description |
---|---|
Vytvoří okno. |
|
Obsahuje výchozí zpracování zprávy. |
|
Vrátí aktuální zprávy. |
|
Registrace třídy okna uzavřeného okna. |
|
Podtřídy okno. |
|
Změny, které zprávy mapy slouží ke zpracování zprávy obsažené okna. |
|
Obnoví dříve subclassed okna. |
|
(Statické) Zpracuje zprávy odeslané do uzavřeného okna. |
Veřejné datové členy
Název |
Description |
---|---|
Určuje, které mapy zprávy bude zpracovávat zprávy obsažené okna. |
|
Určuje název existující třídy okna na které bude založen novou třídu okna. |
|
Odkazuje na původní okno postupu třídu okna. |
|
Odkazuje na objekt obsahující. |
Poznámky
CContainedWindowTimplementuje jiný objekt v okně.CContainedWindowTpostup používá okno Mapovat zprávu obsahující přímé zprávy odpovídající obslužné rutiny objektu ve společnosti.Při vytváření CContainedWindowT objektu určíte, které mapy zpráva by měla být použita.
CContainedWindowTumožňuje vytvořit nové okno superclassing existující třídu okna.Vytvořit metodu poprvé registruje třídu okna, která je založena na existující třídy, ale používá CContainedWindowT::WindowProc .Vytvoření vytvoří okno založené na tuto novou třídu okna.Každá instance CContainedWindowT mohou jiné okno třídy supertřídy.
CContainedWindowTtaké podporuje vytváření podtříd okna. SubclassWindow Metoda připojí ke stávajícím okně CContainedWindowT objektu a změní postup okno CContainedWindowT::WindowProc .Každá instance CContainedWindowT mohou jiné okno podtřídy.
[!POZNÁMKA]
Pro všechny uvedené CContainedWindowT objektů, buď volání vytvořit nebo SubclassWindow .Obě metody na stejný objekt neměly vyvolat.
Při použití Přidání ovládacího prvku na základě možnost Průvodce projektu ATL Průvodce automaticky přidá CContainedWindowT datový člen třídy implementace ovládacího prvku.Následující příklad ukazuje, jak je deklarován uzavřeného okna:
public:
// Declare a contained window data member
CContainedWindow m_ctlEdit;
// Initialize the contained window:
// 1. Pass "Edit" to specify that the contained
// window should be based on the standard
// Windows Edit box
// 2. Pass 'this' pointer to specify that CAtlEdit
// contains the message map to be used for the
// contained window's message processing
// 3. Pass the identifier of the message map. '1'
// identifies the alternate message map declared
// with ALT_MSG_MAP(1)
CAtlEdit()
: m_ctlEdit(_T("Edit"), this, 1)
{
m_bWindowOnly = TRUE;
}
// Declare the default message map, identified by '0'
BEGIN_MSG_MAP(CAtlEdit)
MESSAGE_HANDLER(WM_CREATE, OnCreate)
MESSAGE_HANDLER(WM_SETFOCUS, OnSetFocus)
CHAIN_MSG_MAP(CComControl<CAtlEdit>)
// Declare an alternate message map, identified by '1'
ALT_MSG_MAP(1)
MESSAGE_HANDLER(WM_CHAR, OnChar)
END_MSG_MAP()
// Define OnCreate handler
// When the containing window receives a WM_CREATE
// message, create the contained window by calling
// CContainedWindow::Create
LRESULT OnCreate(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/,
BOOL& /*bHandled*/)
{
RECT rc;
GetWindowRect(&rc);
rc.right -= rc.left;
rc.bottom -= rc.top;
rc.top = rc.left = 0;
m_ctlEdit.Create(m_hWnd, rc, _T("hello"), WS_CHILD | WS_VISIBLE |
ES_MULTILINE | ES_AUTOVSCROLL);
return 0;
}
Další informace o |
Odkaz |
---|---|
Vytváření ovládacích prvků |
|
Pomocí systému windows v ATL |
|
Průvodce projektem knihovny ATL |
|
Windows |
Windows a další témataWindows SDK |
Hierarchii dědičnosti
TBase
CContainedWindowT
Požadavky
Záhlaví: atlwin.h