ID2D1RenderTarget::D rawRectangle-Methoden
Zeichnet die Kontur eines Rechtecks, das über die angegebenen Dimensionen und den angegebenen Strichstil verfügt.
Überladeliste
| Methode | BESCHREIBUNG |
|---|---|
| DrawRectangle(D2D1 _ RECT _ F&,ID2D1Brush * ,FLOAT,ID2D1StrokeStyle * ) | Zeichnet die Kontur eines Rechtecks, das über die angegebenen Dimensionen und den angegebenen Strichstil verfügt. |
| DrawRectangle(D2D1 _ RECT _ F , * ID2D1Brush * , FLOAT, ID2D1StrokeStyle * ) | Zeichnet die Kontur eines Rechtecks, das über die angegebenen Dimensionen und den angegebenen Strichstil verfügt. |
Bemerkungen
Wenn bei dieser Methode ein Fehler auftritt, wird kein Fehlercode zurückgegeben. Überprüfen Sie das von der ID2D1RenderTarget::EndDraw- oder ID2D1RenderTarget::Flush-Methode zurückgegebene Ergebnis, um zu ermitteln, ob bei einer Zeichnungsmethode (z. B. DrawRectangle) ein Fehler auftauen konnte.
Beispiele
Im folgenden Beispiel wird id2D1HwndRenderTarget verwendet, um mehrere Rechtecke zu zeichnen und zu füllen. In diesem Beispiel wird die in der folgenden Abbildung gezeigte Ausgabe erzeugt.

// This method discards device-specific
// resources if the Direct3D device dissapears during execution and
// recreates the resources the next time it's invoked.
HRESULT DemoApp::OnRender()
{
HRESULT hr = S_OK;
hr = CreateDeviceResources();
if (SUCCEEDED(hr))
{
m_pRenderTarget->BeginDraw();
m_pRenderTarget->SetTransform(D2D1::Matrix3x2F::Identity());
m_pRenderTarget->Clear(D2D1::ColorF(D2D1::ColorF::White));
D2D1_SIZE_F rtSize = m_pRenderTarget->GetSize();
// Draw a grid background.
int width = static_cast<int>(rtSize.width);
int height = static_cast<int>(rtSize.height);
for (int x = 0; x < width; x += 10)
{
m_pRenderTarget->DrawLine(
D2D1::Point2F(static_cast<FLOAT>(x), 0.0f),
D2D1::Point2F(static_cast<FLOAT>(x), rtSize.height),
m_pLightSlateGrayBrush,
0.5f
);
}
for (int y = 0; y < height; y += 10)
{
m_pRenderTarget->DrawLine(
D2D1::Point2F(0.0f, static_cast<FLOAT>(y)),
D2D1::Point2F(rtSize.width, static_cast<FLOAT>(y)),
m_pLightSlateGrayBrush,
0.5f
);
}
// Draw two rectangles.
D2D1_RECT_F rectangle1 = D2D1::RectF(
rtSize.width/2 - 50.0f,
rtSize.height/2 - 50.0f,
rtSize.width/2 + 50.0f,
rtSize.height/2 + 50.0f
);
D2D1_RECT_F rectangle2 = D2D1::RectF(
rtSize.width/2 - 100.0f,
rtSize.height/2 - 100.0f,
rtSize.width/2 + 100.0f,
rtSize.height/2 + 100.0f
);
// Draw a filled rectangle.
m_pRenderTarget->FillRectangle(&rectangle1, m_pLightSlateGrayBrush);
// Draw the outline of a rectangle.
m_pRenderTarget->DrawRectangle(&rectangle2, m_pCornflowerBlueBrush);
hr = m_pRenderTarget->EndDraw();
}
if (hr == D2DERR_RECREATE_TARGET)
{
hr = S_OK;
DiscardDeviceResources();
}
return hr;
}
Ein verwandtes Tutorial finden Sie unter Erstellen einer einfachen Direct2D-Anwendung.
Requirements (Anforderungen)
| Anforderung | Wert |
|---|---|
| Header |
|
| Bibliothek |
|
| DLL |
|
Weitere Informationen
�
�