ATLFire, exemple d'attributs : illustre la génération d'un contrôle avec fenêtres
Mise à jour : novembre 2007
L'exemple d'attributs ATLFire est un contrôle ActiveX qui montre comment générer un contrôle avec fenêtres à l'aide d'ATL en attribuant à l'indicateur m_bWindowedOnly la valeur TRUE. Il montre également les modifications à apporter au code de dessin MFC pour le convertir en code Win32. Cet exemple utilise la prise en charge ATL des boîtes de dialogue et feuilles de propriétés Win32 et montre comment utiliser un contrôle onglet Win32 dans un contrôle ActiveX. L'exemple présente également plusieurs des macros ATL.
L'exemple ATLFire est la version sans attributs de cet exemple.
Note de sécurité : |
---|
Cet exemple de code est fourni pour illustrer un concept et ne doit pas être utilisé dans des applications ou des sites Web, car il peut ne pas illustrer les pratiques de programmation les plus sûres. Microsoft n'assume aucune responsabilité pour tout dommage indirect ou consécutif en cas d'utilisation de l'exemple de code à des fins autres que celles prévues. |
Pour obtenir des exemples et des instructions d'installation :
Dans le menu ? (Aide) de Visual Studio, cliquez sur Exemples.
Pour plus d'informations, consultez Recherche des fichiers d'exemple.
La liste la plus récente et la plus complète d'exemples est disponible en ligne à partir de la page Visual Studio 2008 Samples.
Des exemples sont également disponibles sur le disque dur de votre ordinateur. Des exemples et un fichier Readme sont stockés par défaut dans un dossier sous \Program Files\Visual Studio 9.0\Samples\. Pour les éditions Express de Visual Studio, tous les exemples sont disponibles en ligne.
Génération et exécution de l'exemple
Pour générer et exécuter cet exemple
Ouvrez le fichier solution ATLFire.sln.
Dans le menu Générer, cliquez sur Générer.
Une fois l'exemple généré, ouvrez FireTabCtrl.htm dans votre navigateur Web et testez les différents types de feux simulés par l'exemple.
Vous pouvez tester le contrôle ATLFire dans ActiveX Control Test Container. Pour plus d'informations sur l'accès à l'outil Test Container et son utilisation pour tester un contrôle, consultez Test des propriétés et des événements à l'aide de Test Container.
Attributs
Cet exemple utilise les attributs suivants :
coclass, dual, emitidl, helpstring, id, in, module, object, out, pointer_default, progid, propget, propput, registration_script, retval, support_error_info, threading, uuid, version
Classes et mots clés
Cet exemple utilise les classes ATL suivantes :
CComObjectRootEx, CComCoClass, CComControl, IDispatchImpl, IProvideClassInfo2Impl, IPersistStreamInitImpl, IPersistStorageImpl, IPersistPropertyBagImpl, IPerPropertyBrowsingImpl, IQuickActivateImpl, IObjectSafetyImpl, IOleControlImpl, IOleObjectImpl, IOleInPlaceActiveObjectImpl, IViewObjectExImpl, IOleInPlaceObjectWindowlessImpl, IDataObjectImpl, ISupportErrorInfo, ISpecifyPropertyPagesImpl, IConnectionPointContainerImpl, IPropertyNotifySinkCP, CDialogImpl
Cet exemple utilise les mots clés suivants :
_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
Remarque : |
---|
Certains exemples, tels que celui-ci, n'ont pas été modifiés pour refléter les changements apportés aux Assistants, aux bibliothèques et au compilateur Visual C++, mais ils illustrent bien l'exécution de la tâche souhaitée. |