Método PathGradientBrush::GetSurroundColors (gdipluspath.h)
O método PathGradientBrush::GetSurroundColors obtém as cores surround especificadas atualmente para esse pincel de gradiente de caminho.
Sintaxe
Status GetSurroundColors(
[in] Color *colors,
[in, out] INT *count
);
Parâmetros
[in] colors
Tipo: Cor*
Ponteiro para uma matriz que recebe as cores do surround.
[in, out] count
Tipo: INT*
Ponteiro para um inteiro que, na entrada, especifica o número de cores solicitadas. Se o método for bem-sucedido, esse parâmetro, na saída, receberá o número de cores recuperadas. Se o método falhar, esse parâmetro não receberá um valor.
Retornar valor
Tipo: Status
Se o método for bem-sucedido, ele retornará Ok, que é um elemento da enumeração Status .
Se o método falhar, ele retornará um dos outros elementos da enumeração Status .
Comentários
Um pincel de gradiente de caminho tem um caminho de limite e um ponto central. O ponto central é definido como uma única cor, mas você pode especificar cores diferentes para vários pontos no limite. Por exemplo, suponha que você especifique vermelho para a cor central e especifique azul, verde e amarelo para pontos distintos no limite. Em seguida, à medida que você se move ao longo do limite, a cor mudará gradualmente de azul para verde para amarelo e de volta para azul. À medida que você se move ao longo de uma linha reta de qualquer ponto no limite para o ponto central, a cor mudará da cor desse ponto de limite para vermelho.
Exemplos
O exemplo a seguir cria um objeto PathGradientBrush com base em um caminho triangular definido por uma matriz de três pontos. O código chama o método PathGradientBrush::SetSurroundColors do objeto PathGradientBrush para especificar uma cor para cada um dos pontos que definem o triângulo. O método PathGradientBrush::GetSurroundColorCount determina o número atual de cores surround (as cores especificadas para o caminho de limite do pincel). Em seguida, o código aloca um buffer grande o suficiente para receber a matriz de cores surround e chama PathGradientBrush::GetSurroundColors para preencher esse buffer. Por fim, o código preenche um pequeno quadrado com cada uma das cores surround do pincel.
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;
}
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP, Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | gdipluspath.h (inclua Gdiplus.h) |
Biblioteca | Gdiplus.lib |
DLL | Gdiplus.dll |
Confira também
Criando um Gradiente de Caminho
Preenchendo uma forma com um gradiente de cor