Freigeben über


CWnd::CreateControl

Verwenden Sie diese Memberfunktion, um ein ActiveX-Steuerelement erstellen, das im CWnd MFC-Programm durch ein Objekt dargestellt wird.

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

Parameter

  • pszClass
    Diese Zeichenfolge enthält möglicherweise das OLE "kurze" (ProgID) für die Klasse z...B CIRC3.Circ3Ctrl.1".Der Name muss den gleichen Namen übereinstimmen, der durch das Steuerelement registriert wird.Alternativ enthält die Zeichenfolge kann die Zeichenfolgendarstellung von CLSID, enthalten in geschweiften Klammern z...9DBAFCCF-592F-101B-85CE-00608CEC297B "{}".In jedem Fall CreateControl konvertiert die Zeichenfolge in die entsprechenden Klasse ID

  • pszWindowName
    Ein Zeiger auf im Steuerelement angezeigt werden, Text.Legt den Wert der Beschriftungs- oder Texteigenschaft des Steuerelements fest (falls vorhanden).Wenn die Eigenschaft NULL, der Beschriftung des Steuerelements oder Text nicht geändert wird.

  • dwStyle
    Windows-Formate.Die verfügbaren Stile werden unter Hinweisen aufgeführt.

  • rect
    Gibt die Größe und die Position des Steuerelements an.Sie kann ein CRect-Objekt oder eine Struktur RECT sein.

  • ppt
    Zeigt auf PUNKT-Struktur oder zu CPoint-Objekt, die obere linke Ecke des Steuerelements enthält.

  • pSize
    Zeigt auf GRÖSSE-Struktur oder zu CSize-Objekt, die die Größe des Steuerelements enthält

  • pParentWnd
    Gibt das übergeordnete Fenster des Steuerelements an.Er darf nicht NULL sein.

  • nID
    Gibt die ID des Steuerelements an

  • pPersist
    Ein Zeiger auf Die C-Datei, das persistenten Zustand für das Steuerelement enthält.Der Standardwert ist NULL und angibt, dass das Steuerelement auf initialisiert, ohne seinen Zustand von jedem permanenten Speicher wiederherzustellen.Wenn nicht NULL, wird ein Zeiger auf CFile von abgeleitetes Objekt ist, das die persistenten Daten des Steuerelements enthält, entweder in Form eines Streams oder einem Speicher.Diese Daten können in einer vorherigen Aktivierung des Clients gespeichert werden.CFile kann andere Daten enthalten, muss jedoch den Lese-Schreibzeiger zum ersten Byte persistenten Daten zum Zeitpunkt des Aufrufs zu CreateControl verfügen.

  • bStorage
    Gibt an, ob die Daten in pPersist als Daten IStorage oder IStream interpretiert werden sollen.Wenn die Daten in pPersist ein Speicher sind, sollte bStorageTRUE sein.Wenn die Daten in pPersist ein Stream sind, sollte bStorageFALSE sein.Der Standardwert ist FALSE.

  • bstrLicKey
    Optionale Lizenzschlüsseldaten.Diese Daten werden nur für das Erstellen von Steuerelementen erfordert, die einen Ablauflizenzschlüssel erfordern.Wenn das Steuerelement Lizenzierung unterstützt, müssen Sie einen Lizenzschlüssel für die Erstellung des Steuerelements bereitstellen, um folgen.Der Standardwert ist NULL.

  • clsid
    Die eindeutigen Klassen-ID des Steuerelements.

Rückgabewert

Ungleich 0 (null), wenn erfolgreich; 0 andernfalls.

Hinweise

CreateControl ist eine direkte Entsprechung der CWnd::Create-Funktion, die das Fenster für CWnd erstellt wird.CreateControl erstellt ein ActiveX-Steuerelement anstelle eines normalen Fensters.

Nur eine Teilmenge der Flags Windows dwStyle werden für CreateControl unterstützt:

  • WS_VISIBLE wird ein Fenster erstellt, das zuerst sichtbar ist.Erforderlich, wenn Sie das Steuerelement sofort sichtbar sein soll, wie gewöhnliche Fenster.

  • WS_DISABLED wird ein Fenster erstellt, das zuerst deaktiviert ist.Ein deaktiviertes Fenster kann Benutzereingaben nicht erhalten.Kann festgelegt werden, wenn das Steuerelement eine aktivierte Eigenschaft verfügt.

  • WS_BORDER stellt ein Fenster mit einem DünnZeile Rahmen erstellt.Kann festgelegt werden, wenn eine BorderStyle-Eigenschaft Steuerelement verfügt.

  • WS_GROUP gibt das erste Steuerelement einer Gruppe Steuerelemente an.Der Benutzer kann den Tastaturfokus von einem Steuerelement in der Gruppe wie folgt ändern, indem er die Pfeiltasten verwendet.Alle Steuerelemente, die mit dem WS_GROUP Format nach dem ersten - Steuerelement definiert werden, gehören derselben Gruppe.Das folgende - Steuerelement mit dem WS_GROUP Format beendet die Gruppe und beginnt die folgende Gruppe.

  • WS_TABSTOP gibt ein Steuerelement, das den Tastaturfokus erhalten kann, wenn der Benutzer die TAB-TASTE drückt.Die TAB-TASTEen-Änderungen der Tastaturfokus am nächsten Steuerelement des WS_TABSTOP Format drücken.

Beispiel

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...

Anforderungen

Header: afxwin.h

Siehe auch

Referenz

CWnd-Klasse

Hierarchien-Diagramm

Konzepte

MFC-ActiveX-Steuerelemente