ATLFire-Beispiel: Erstellen eines Fenstersteuerelements veranschaulicht
Das ATLFire-Beispiel ist ein ActiveX-Steuerelement, das veranschaulicht, wie mit ATL, indem Sie auf m_bWindowedOnlyTRUE-Flag festlegen ein Fenstersteuerelement erstellt. Es zeigt außerdem was den MFC-Zeichencode zum Konvertieren in geraden Win32-Code durchgeführt werden muss. Das Beispiel verwendet die ATL-Unterstützung für Win32-Dialogfelder und Eigenschaftenblätter und veranschaulicht auch, wie mithilfe ein Win32-Registersteuerelements in einem ActiveX-Steuerelement. Das Beispiel veranschaulicht außerdem einige der ATL-Makros.
Das ATLFire-Attribute Beispiel x5bh51cs(v=vs.100).md ist die attributierte Version dieses Beispiels.
Sicherheitshinweis |
---|
Dieser Beispielcode soll ein Konzept veranschaulichen, und es wird nur den Code, der für dieses Konzept relevant sind. Möglicherweise erfüllt dieser nicht die Sicherheitsanforderungen für eine bestimmte Umgebung, und er sollte nicht genau wie dargestellt verwendet werden. Wir empfehlen, Sicherheits- und Fehlerbehandlungscode hinzuzufügen, um Ihre Projekte sicherer und stabiler zu machen. Microsoft stellt diesen Beispielcode "Wie besehen"keine Garantien. |
So erhalten Sie Beispiele und Anweisungen für deren Installation:
Um Beispiele von Visual Studio zuzugreifen
im Menü Hilfe Menü klicken Beispiele.
Standardmäßig sind die Beispiele in installiert. Laufwerk: \Programme\Microsoft visual Studio 10.0\Samples\.
- Die neueste Version dieses Beispiels und eine Liste der anderen Beispiele finden Sie unter Visual Studio Samples auf der MSDN-Website.
Erstellen und Ausführen des Beispiels
So erstellen und in diesem Beispiel führen
Öffnen Sie die Projektmappendatei ATLFire.sln.
erstellen Sie Menü, klicken Sie auf erstellen.
Nachdem das Beispiel erstellt wurde, öffnen Sie in Ihrem Webbrowser, FireTabCtrl.htm, und probieren Sie verschiedene Arten von, die im Beispiel simuliert Feuer.
Sie können das ATLFire-Steuerelement im Testcontainer für ActiveX-Steuerelemente testen testen. Details zu den Testcontainer zugreifen und es zum Testen eines Steuerelements verwenden finden Sie unter Testen von Eigenschaften und Ereignissen mit Testcontainer.
Klassen und Schlüsselwörter
In diesem Beispiel werden die folgenden ATL-Klassen verwendet:
CComObjectRootEx, CComCoClass, CComControl, IDispatchImpl, IProvideClassInfo2Impl, IPersistStreamInitImpl, IPersistStorageImpl, IPersistPropertyBagImpl, IPerPropertyBrowsingImpl, IQuickActivateImpl, IObjectSafetyImpl, IOleControlImpl, IOleObjectImpl, IOleInPlaceActiveObjectImpl, IViewObjectExImpl, IOleInPlaceObjectWindowlessImpl, IDataObjectImpl, ISupportErrorInfo, ISpecifyPropertyPagesImpl, IConnectionPointContainerImpl, IPropertyNotifySinkCP, CDialogImpl
In diesem Beispiel werden die folgenden Schlüsselwörter verwendet:
_ASSERTE ; _itot; _tcstol; ALT_MSG_MAP; Apply; ATLTRACE; BEGIN_COM_MAP; BEGIN_CONNECTION_POINT_MAP; BEGIN_MSG_MAP; BEGIN_OBJECT_MAP; BEGIN_PROPERTY_MAP; CComCoClass; CComModule::GetClassObject; CComModule::GetLockCount; CComModule::Init; CComModule::RegisterServer; CComModule::Term; CComModule::UnregisterServer; CComObjectRootEx; CDialogImpl; ClientToScreen; COM_INTERFACE_ENTRY; COM_INTERFACE_ENTRY_IMPL; COM_INTERFACE_ENTRY_IMPL_IID; COMMAND_HANDLER; COMMAND_ID_HANDLER; CONNECTION_POINT_ENTRY; CPropDlg::DoModal; CreateBitmap; CreatePalette; DECLARE_REGISTRY_RESOURCEID; DeleteDC; DeleteObject; DestroyMenu; DisableThreadLibraryCalls; EnableWindow; END_COM_MAP; END_CONNECTION_POINT_MAP; END_MSG_MAP; END_OBJECT_MAP; END_PROPERTY_MAP; EndDialog; FillRect; FireOnChanged; GetActiveWindow; GetClientRect; GetDlgItem; GetDlgItemText; GetModuleInstance; GetWindowRect; IConnectionPointContainerImpl; IDataObjectImpl; IDispatchImpl; InitFire; InlineIsEqualGUID; IObjectSafetyImpl; IOleControlImpl; IOleInPlaceActiveObjectImpl; IOleInPlaceObjectWindowlessImpl; IOleObjectImpl; IPersistPropertyBagImpl; IPersistStorageImpl; IPersistStreamInitImpl; IPropertyNotifySinkCP; IProvideClassInfo2Impl; IQuickActivateImpl; ISpecifyPropertyPagesImpl; ISupportErrorInfo; IViewObjectExImpl; memcpy; MESSAGE_HANDLER; MessageBox; NOTIFY_CODE_HANDLER; OBJECT_ENTRY; OnActivate; OnApply; OnCancel; OnCreate; OnDestroy; OnEraseBackground; OnInitDialog; OnOK; OnPaint; OnPaletteChanged; OnProperties; OnPropertyChanged; OnQueryNewPalette; OnRButtonDown; OnSelChanged; OnSelChanging; OnSize; OnTimer; PAINTSTRUCT ; PeekMessage; PROP_ENTRY; RealizePalette; SelectObject; SendMessage; SetTimer; SetWindowPos; TrackPopupMenuEx; UnregisterClass