Metodo PathGradientBrush::GetSurroundColors (gdipluspath.h)
Il metodo PathGradientBrush::GetSurroundColors ottiene i colori surround attualmente specificati per questo pennello sfumatura di percorso.
Sintassi
Status GetSurroundColors(
[in] Color *colors,
[in, out] INT *count
);
Parametri
[in] colors
Tipo: colore*
Puntatore a una matrice che riceve i colori circondati.
[in, out] count
Tipo: INT*
Puntatore a un intero che, in input, specifica il numero di colori richiesti. Se il metodo ha esito positivo, questo parametro, nell'output, riceve il numero di colori recuperati. Se il metodo ha esito negativo, questo parametro non riceve un valore.
Valore restituito
Tipo: Stato
Se il metodo ha esito positivo, restituisce Ok, ovvero un elemento dell'enumerazione Status .
Se il metodo ha esito negativo, restituisce uno degli altri elementi dell'enumerazione Status .
Commenti
Un pennello sfumatura percorso ha un percorso limite e un punto centrale. Il punto centrale è impostato su un singolo colore, ma è possibile specificare colori diversi per diversi punti al limite. Si supponga, ad esempio, di specificare il rosso per il colore centrale e si specifica blu, verde e giallo per punti distinti sul limite. Poi quando si sposta lungo il limite, il colore cambierà gradualmente dal blu al verde al giallo e tornare al blu. Quando si sposta lungo una linea dritta da qualsiasi punto del limite al punto centrale, il colore cambierà dal colore del punto limite al rosso.
Esempio
Nell'esempio seguente viene creato un oggetto PathGradientBrush basato su un percorso triangolare definito da una matrice di tre punti. Il codice chiama il metodo PathGradientBrush::SetSurroundColors dell'oggetto PathGradientBrush per specificare un colore per ognuno dei punti che definiscono il triangolo. Il metodo PathGradientBrush::GetSurroundColorCount determina il numero corrente di colori circondati (i colori specificati per il percorso limite del pennello). Successivamente, il codice alloca un buffer abbastanza grande per ricevere la matrice di colori circondati e chiama PathGradientBrush::GetSurroundColors per riempire tale buffer. Infine il codice riempie un piccolo quadrato con ognuno dei colori circondati del pennello.
VOID Example_GetSurColors(HDC hdc)
{
Graphics graphics(hdc);
// Create a path gradient brush and set its surround colors.
Point pts[] = {
Point(20, 20),
Point(100, 20),
Point(100, 100)};
Color cols[] = {
Color(255, 255, 0, 0), // red
Color(255, 0, 255, 0), // green
Color(255, 0, 0, 0)}; // black
INT count = 3;
PathGradientBrush pthGrBrush(pts, 3);
pthGrBrush.SetSurroundColors(cols, &count);
// Obtain information about the path gradient brush.
INT colorCount = pthGrBrush.GetSurroundColorCount();
Color* colors = new Color[colorCount];
pthGrBrush.GetSurroundColors(colors, &colorCount);
// Fill a small square with each of the surround colors.
SolidBrush solidBrush(Color(255, 255, 255, 255));
for(INT j = 0; j < colorCount; ++j)
{
solidBrush.SetColor(colors[j]);
graphics.FillRectangle(&solidBrush, 15*j, 0, 10, 10);
}
delete [] colors;
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP, Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | gdipluspath.h (include Gdiplus.h) |
Libreria | Gdiplus.lib |
DLL | Gdiplus.dll |
Vedi anche
Creazione di una sfumatura di percorso
Riempimento di una forma con sfumatura di colore