Aracılığıyla paylaş


CContainedWindowT sınıfı

Bu sınıf, başka bir nesnenin içinde bulunan bir pencere uygular.

Önemli notÖnemli

Bu sınıf ve üyeleri, Windows çalışma zamanında yürütmek uygulamalarda kullanılamaz.

template <
class TBase= CWindow,
class TWinTraits= CControlWinTraits 
>
class CContainedWindowT :
public TBase

Parametreler

  • TBase
    Yeni sınıfınızın temel sınıfı.Varsayılan temel sınıfı olan CWindow.

  • TWinTraits
    Pencereniz için stilleri tanımlar nitelikler sınıf.Varsayılan, CControlWinTraits değeridir.

[!NOT]

CContainedWindow 'ın uzmanlığı olan CContainedWindowT.Temel sınıf veya nitelikler değiştirmek isterseniz, kullanmak CContainedWindowT doğrudan.

Üyeler

9e286yks.collapse_all(tr-tr,VS.110).gifOrtak Oluşturucusu

Ad

Description

CContainedWindowT::CContainedWindowT

Oluşturucu.Hangi ileti eşleme içerilen pencerenin iletileri işleyecek belirtmek için veri üyeleri başlatır.

9e286yks.collapse_all(tr-tr,VS.110).gifPublic yöntemler

Ad

Description

CContainedWindowT::Create

Bir pencere oluşturur.

CContainedWindowT::DefWindowProc

Varsayılan ileti işleme sağlar.

CContainedWindowT::GetCurrentMessage

Geçerli iletiyi döndürür.

CContainedWindowT::RegisterWndSuperclass

İçerilen penceresinin pencere sınıfı kaydeder.

CContainedWindowT::SubclassWindow

Pencere bir alt sınıfları.

CContainedWindowT::SwitchMessageMap

Hangi ileti eşleme içerilen pencere iletilerini işlemek için kullanılan değiştirir.

CContainedWindowT::UnsubclassWindow

Daha önce subclassed bir pencereyi getirir.

CContainedWindowT::WindowProc

(Statik) İçerilen penceresine gönderilen iletileri işler.

9e286yks.collapse_all(tr-tr,VS.110).gifOrtak veri üyeleri

Ad

Description

CContainedWindowT::m_dwMsgMapID

Hangi ileti eşleme içerilen pencerenin iletileri işleyecek tanımlar.

CContainedWindowT::m_lpszClassName

Yeni bir pencere sınıfı temel alır varolan bir pencere sınıfı adını belirtir.

CContainedWindowT::m_pfnSuperWindowProc

Pencere sınıfı'nın orijinal pencere yordamı için işaret ediyor.

CContainedWindowT::m_pObject

Noktalarını içeren nesne.

Notlar

CContainedWindowTbaşka bir nesnenin içinde bulunan bir pencere uygular.CContainedWindowTkullanıcının ileti eşleme uygun işleyicileri doğrudan iletileri içeren nesne içinde pencere yordamı kullanır.Oluşturulurken, bir CContainedWindowT nesne belirttiğiniz ileti eşlemeye kullanılmalıdır.

CContainedWindowTVarolan bir pencere sınıfı tarafından superclassing yeni bir pencere oluşturmanıza olanak tanır.Create yöntemi ilk kayıtlarını kullanır ancak varolan bir sınıfa dayalı bir pencere sınıfı CContainedWindowT::WindowProc.Oluşturma bu yeni pencere sınıfını esas bir pencere oluşturur.Her bir örneği CContainedWindowT üst sınıf farklı pencere sınıfı olabilir.

CContainedWindowTAyrıca pencerenin alt sınıflara ayırma destekler.SubclassWindow Yöntemi ekler Varolan bir pencerede CContainedWindowT object ve pencere yordamı değiştirir CContainedWindowT::WindowProc.Her bir örneği CContainedWindowT farklı bir pencereye alt sınıfı olabilir.

[!NOT]

Herhangi verilen CContainedWindowT nesne, ya da call Create veya SubclassWindow.Her iki yöntem de aynı nesne üzerinde çağıracağı değil.

Kullandığınızda göre Ekle denetim seçenek atl Project Sihirbazı'nda, sihirbaz otomatik olarak ekleyecek bir CContainedWindowT denetimi gerçekleştiren sınıf için veri üyesi.Aşağıdaki örnekte içerilen pencerenin nasıl bildirilen gösterilmektedir:

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;
}

Daha fazla bilgi

Daha fazla bilgi için bkz:

Denetimleri oluşturma

atl Öğreticisi

atl Windows kullanma

atl pencere sınıfları

atl Project Sihirbazı

atl proje oluşturma

Windows

Windows ve sonraki konularındaWindows SDK

Devralma hiyerarşisi

TBase

CContainedWindowT

Gereksinimler

Başlık: atlwin.h

Ayrıca bkz.

Başvuru

CWindow sınıfı

CWindowImpl sınıfı

CMessageMap sınıfı

BEGIN_MSG_MAP

ALT_MSG_MAP

Diğer Kaynaklar

atl sınıfına genel bakış