Share via


Beispiel für Direct3D-Attribute: Veranschaulicht die Verwendung von Direct3D

Beispiel für Direct3D-Attribute erstellt ein Steuerelement, das mithilfe Bibliothek der Direct3D-Grafiken ein sich drehendes Dreieck zeichnet.

SicherheitshinweisSicherheitshinweis

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

  1. Öffnen Sie die Projektmappendatei Direct3D.sln.

  2. Erstellen Sie aus der Menü, und klicken Sie auf Projektmappe.

  3. Nachdem das Beispiel erstellt ist, öffnen Sie Direct3D.htm in Ihrem Webbrowser.

Sie können das 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.

Attribute

In diesem Beispiel werden die folgenden Attribute verwendet:

coclass , default, dll, dual, helpstring, implements_category, module, name, object, pointer_default, progid, registration_script, support_error_info, uuid, vi_progid

Schlüsselwörter

In diesem Beispiel werden die folgenden Schlüsselwörter verwendet:

Apartment; ATLASSERT; ATLTRACE; AtlWaitWithMessageLoop; BEGIN_COM_MAP; BEGIN_MSG_MAP; BEGIN_OBJECT_MAP; BEGIN_PROPERTY_MAP; CComCoClass; CComControl; CComControlBase::InPlaceActivate; CComModule::GetClassObject; CComModule::GetLockCount; CComModule::Init; CComModule::RegisterServer; CComModule::Term; CComModule::UnregisterServer; CComObjectRoot; CException::ReportError; CoGetInterfaceAndReleaseStream; CoInitialize; COM_INTERFACE_ENTRY; COM_INTERFACE_ENTRY_IMPL; COM_INTERFACE_ENTRY_IMPL_IID; CoMarshalInterThreadInterfaceInStream; CopyMemory; CoUninitialize; CreatePalette; CreateRectRgn; CreateThread; D3DEXECUTEBUFFERDESC; DDSURFACEDESC; DDSURFACEDESC; DECLARE_GET_CONTROLLING_UNKNOWN; DECLARE_REGISTRY_RESOURCEID; DirectDrawCreate; DirectDrawCreateClipper; DisableThreadLibraryCalls; END_OBJECT_MAP; GetClientRect; GetOurWindow; GetSystemPaletteEntries; IDataObjectImpl; IDirect3D::CreateLight; IDirect3D::CreateMaterial; IDirect3D::CreateViewport; IDirect3DDevice::AddViewport; IDirect3DDevice::BeginScene; IDirect3DDevice::CreateMatrix; IDirect3DDevice::DeleteMatrix; IDirect3DDevice::EndScene; IDirect3DDevice::Execute; IDirect3DViewport::AddLight; IDirect3DViewport::CreateMatrix; IDirect3DViewport::SetBackground; IDirect3DViewport::SetMatrix; IDirectDraw2::EnumDevices; IDirectDraw2::SetCooperativeLevel; IDirectDrawClipper::SetHWnd; IDirectDrawSurface2::AddAttachedSurface; IDirectDrawSurface2::GetSurfaceDesc; IDirectDrawSurface2::Restore; IDirectDrawSurface2::SetClipper; IDispatchImpl; IObjectSafetyImpl; IOleControlImpl; IOleInPlaceActiveObjectImpl; IOleInPlaceObjectWindowlessImpl; IOleInPlaceObjectWindowlessImpl::InPlaceDeactivate; IOleInPlaceObjectWindowlessImpl::SetObjectRects; IOleObjectImpl; IPersistStorageImpl; IPersistStreamInitImpl; IProvideClassInfo2Impl; IQuickActivateImpl; ISupportErrorInfo; IViewObjectExImpl; LPD3DDEVICEDESC; LPD3DINSTRUCTION; LPD3DPROCESSVERTICES; LPD3DSTATE; LPD3DTRIANGLE; LPD3DVERTEX; LPDIRECTDRAWCLIPPER ; MessageBox; OBJECT_ENTRY; OffsetRect; OnEraseBackground; PALETTEENTRY; QueryInterface; RenderScene; SelectClipRgn; SetPalette; WindowFromDC; ZeroMemory

Hinweis

Einige Beispiele wie diesen, wurden nicht geändert, um Änderungen in der Visual C++-Assistenten, Bibliotheken und Compiler, demonstrieren aber dennoch wie Sie die gewünschte Aufgabe durchführen.

Siehe auch

Weitere Ressourcen

ATL-Attributbeispiele