CWnd::CreateControl

이 멤버 함수를 사용 하 여 MFC 프로그램에서 표시 되는 ActiveX 컨트롤을 만들 수 있는 CWnd 개체입니다.

BOOL CreateControl(
   LPCTSTR pszClass,
   LPCTSTR pszWindowName,
   DWORD dwStyle,
   const RECT& rect,
   CWnd* pParentWnd,
   UINT nID,
   CFile* pPersist = NULL,
   BOOL bStorage = FALSE,
   BSTR bstrLicKey = NULL 
);
BOOL CreateControl(
   REFCLSID clsid,
   LPCTSTR pszWindowName,
   DWORD dwStyle,
   const RECT& rect,
   CWnd* pParentWnd,
   UINT nID,
   CFile* pPersist = NULL,
   BOOL bStorage = FALSE,
   BSTR bstrLicKey = NULL 
);
BOOL CreateControl(
   REFCLSID clsid,
   LPCTSTR pszWindowName,
   DWORD dwStyle,
   const POINT* ppt,
   const SIZE* psize,
   CWnd* pParentWnd,
   UINT nID,
   CFile* pPersist = NULL,
   BOOL bStorage = FALSE,
    BSTR bstrLicKey = NULL
);

매개 변수

  • pszClass
    이 문자열은 "짧은 이름" OLE 포함 될 수 있습니다 (ProgID) 클래스 e.g., "CIRC3.Circ3Ctrl.1 ".이름 같은 컨트롤에 의해 등록 된 이름과 일치 해야 합니다.문자열 형태의 문자열 또는 있습니다는 CLSID, 중괄호에 포함 된 전자.g., "{9DBAFCCF-592F-101B-85CE-00608CEC297B}"입니다.두 경우 모두에서 CreateControl 해당 클래스 ID를 문자열 변환

  • pszWindowName
    컨트롤에 표시 되는 텍스트에 대 한 포인터입니다.컨트롤의 텍스트 또는 캡션 속성 값 (있는 경우)을 설정 합니다.경우 NULL, 컨트롤의 텍스트 또는 캡션 속성을 변경 되지 않습니다.

  • dwStyle
    창 스타일입니다.사용 가능한 스타일 아래 설명에 나와 있습니다.

  • rect
    컨트롤의 크기와 위치를 지정합니다.적일 수 있는 CRect 개체 또는 RECT 구조.

  • ppt
    가리키는 있는 지점 구조 또는 CPoint 컨트롤의 왼쪽된 위 모서리를 포함 하는 개체입니다.

  • pSize
    가리키는 있는 크기 구조 또는 CSize 컨트롤의 크기를 포함 하는 개체

  • pParentWnd
    컨트롤의 부모 창으로 지정합니다.다시 해야 NULL.

  • nID
    컨트롤의 ID를 지정합니다.

  • pPersist
    에 대 한 포인터는 CFile 컨트롤에 대 한 영구 상태를 포함 하.기본값은 NULL를 나타내는 컨트롤에 자체는 영구 저장소에서 해당 상태를 복원 하지 않고 초기화 합니다.그렇지 않으면 NULL, 것에 대 한 포인터는 CFile-파생 컨트롤의 영구 데이터 저장소 또는 스트림을 형태로 포함 하는 개체.이 데이터 클라이언트에는 이전 정품 인증을 사용 하 여 저장 수 있습니다.CFile 기타 데이터를 포함할 수 있지만 읽기 / 쓰기 포인터 호출 시 영구 데이터의 첫 번째 바이트에 설정 되어 있어야 CreateControl.

  • bStorage
    나타냅니다 여부는 데이터에 pPersist IStorage 또는 IStream 데이터로 해석 해야 합니다.경우 데이터에서 pPersist 에 저장 된 bStorage 해야 TRUE.경우 데이터에서 pPersist 되는 스트림 bStorage 해야 FALSE.기본값은 거짓.

  • bstrLicKey
    선택적 라이센스 키 데이터입니다.이 데이터는 런타임 라이센스 키를 필요로 하는 컨트롤을 만드는 데에 필요 합니다.컨트롤 라이센스를 지 원하는 경우 컨트롤이 성공적으로 만들기 위해 라이센스 키를 제공 해야 합니다.기본값은 NULL.

  • clsid
    컨트롤의 고유 클래스 ID입니다.

반환 값

성공 하면 0이 아닌. 그렇지 않으면 0입니다.

설명

CreateControl한 직접 아날로그 되는 CWnd::Create 창에 생성 하는 함수는 CWnd.CreateControl보통의 창 대신에 ActiveX 컨트롤을 만듭니다.

일부 Windows dwStyle 플래그에 대 한 지원 CreateControl.

  • WS_VISIBLE 처음에 표시 되는 창이 만들어집니다.일반적인 다른 창과 마찬가지로 즉시 표시 되도록 컨트롤을 사용할 경우 필요 합니다.

  • WS_DISABLED 처음에 비활성화 된 창을 만듭니다.비활성된 창에서 사용자 입력을 받을 수 없습니다.컨트롤에 사용 속성이 있는 경우 설정할 수 있습니다.

  • WS_BORDER창 얇은 선 테두리를 만듭니다.경우 컨트롤 BorderStyle 속성을 설정할 수 있습니다.

  • WS_GROUP 컨트롤 그룹의 첫 번째 컨트롤을 지정 합니다.사용자가 키보드 포커스 그룹에서 한 컨트롤에서 다음 방향 키를 사용 하 여 변경할 수 있습니다.정의 된 모든 컨트롤은 WS_GROUP 같은 그룹에 속하는 첫 번째 컨트롤 후 스타일.다음 컨트롤에는 WS_GROUP 스타일의 그룹을 종료 하 고 다음 그룹을 시작 합니다.

  • WS_TABSTOP 탭 키를 누를 때 키보드 포커스를 받을 수 있는 컨트롤을 지정 합니다.TAB 키를 누르면 키보드 포커스를 다음 컨트롤로 변경 된 WS_TABSTOP 스타일입니다.

예제

class CGenocx : public CWnd
{
protected:
   DECLARE_DYNCREATE(CGenocx)
public:
   CLSID const& GetClsid()
   {
      static CLSID const clsid
         = { 0x20DD1B9E, 0x87C4, 0x11D1, { 0x8B, 0xE3, 0x0, 0x0, 0xF8, 0x75, 0x4D, 0xA1 } };
      return clsid;
   }

   // This code is generated by the Control Wizard.
   // It wraps the call to CreateControl in the call to Create.
   virtual BOOL Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle,
                  const RECT& rect, CWnd* pParentWnd, UINT nID, 
                  CCreateContext* pContext = NULL)
   { 
      UNREFERENCED_PARAMETER(pContext);
      UNREFERENCED_PARAMETER(lpszClassName);

      return CreateControl(GetClsid(), lpszWindowName, dwStyle, rect, pParentWnd, nID); 
   }

   // remainder of class declaration omitted...

요구 사항

헤더: afxwin.h

참고 항목

참조

CWnd 클래스

계층 구조 차트

개념

MFC 컨트롤을 ActiveX