ID2D1SimplifiedGeometrySink ::Close, méthode (d2d1.h)
Ferme le récepteur geometry, indique s’il est dans un état d’erreur et réinitialise l’état d’erreur du récepteur.
Syntaxe
HRESULT Close();
Valeur de retour
Type : HRESULT
Si cette méthode réussit, elle retourne S_OK. Sinon, il retourne un code d’erreur HRESULT .
Remarques
Ne fermez pas le récepteur geometry tant qu’une figure est toujours en cours d’exécution ; Cela place le récepteur geometry dans un état d’erreur. Pour que l’opération de fermeture réussisse, il doit y avoir un appel EndFigure pour chaque appel à BeginFigure.
Après avoir appelé cette méthode, le récepteur geometry peut ne pas être utilisable. Les implémentations Direct2D de cette interface n’autorisent pas la modification du récepteur geometry après sa fermeture, mais d’autres implémentations peuvent ne pas imposer cette restriction.
Exemples
L’exemple suivant crée un ID2D1PathGeometry, récupère un récepteur et l’utilise pour définir une forme de sablier.
ID2D1GeometrySink *pSink = NULL;
// Create a path geometry.
if (SUCCEEDED(hr))
{
hr = m_pD2DFactory->CreatePathGeometry(&m_pPathGeometry);
if (SUCCEEDED(hr))
{
// Write to the path geometry using the geometry sink.
hr = m_pPathGeometry->Open(&pSink);
if (SUCCEEDED(hr))
{
pSink->BeginFigure(
D2D1::Point2F(0, 0),
D2D1_FIGURE_BEGIN_FILLED
);
pSink->AddLine(D2D1::Point2F(200, 0));
pSink->AddBezier(
D2D1::BezierSegment(
D2D1::Point2F(150, 50),
D2D1::Point2F(150, 150),
D2D1::Point2F(200, 200))
);
pSink->AddLine(D2D1::Point2F(0, 200));
pSink->AddBezier(
D2D1::BezierSegment(
D2D1::Point2F(50, 150),
D2D1::Point2F(50, 50),
D2D1::Point2F(0, 0))
);
pSink->EndFigure(D2D1_FIGURE_END_CLOSED);
hr = pSink->Close();
}
SafeRelease(&pSink);
}
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7, Windows Vista avec SP2 et Mise à jour de plateforme pour Windows Vista [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows Server 2008 R2, Windows Server 2008 avec SP2 et Mise à jour de plateforme pour Windows Server 2008 [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | d2d1.h |
Bibliothèque | D2d1.lib |
DLL | D2d1.dll |