Método PathGradientBrush::GetSurroundColors (gdipluspath.h)
El método PathGradientBrush::GetSurroundColors obtiene los colores envolventes especificados actualmente para este pincel de degradado de ruta de acceso.
Sintaxis
Status GetSurroundColors(
[in] Color *colors,
[in, out] INT *count
);
Parámetros
[in] colors
Tipo: Color*
Puntero a una matriz que recibe los colores envolventes.
[in, out] count
Tipo: INT*
Puntero a un entero que, en la entrada, especifica el número de colores solicitados. Si el método se realiza correctamente, este parámetro, en la salida, recibe el número de colores recuperados. Si se produce un error en el método, este parámetro no recibe un valor.
Valor devuelto
Tipo: Estado
Si el método se realiza correctamente, devuelve Ok, que es un elemento de la enumeración Status .
Si se produce un error en el método, devuelve uno de los otros elementos de la enumeración Status .
Comentarios
Un pincel de degradado de trazado tiene un trazado de límite y un punto central. El punto central se establece en un solo color, pero puede especificar colores diferentes para varios puntos en el límite. Por ejemplo, supongamos que especifica rojo para el color central y especifica azul, verde y amarillo para puntos distintos en el límite. A medida que se mueve a lo largo del límite, el color cambiará gradualmente de azul a verde a amarillo y de vuelta a azul. A medida que se mueve a lo largo de una línea recta desde cualquier punto del límite al punto central, el color cambiará del color de ese punto de límite a rojo.
Ejemplos
En el ejemplo siguiente se crea un objeto PathGradientBrush basado en una ruta triangular definida por una matriz de tres puntos. El código llama al método PathGradientBrush::SetSurroundColors del objeto PathGradientBrush para especificar un color para cada uno de los puntos que definen el triángulo. El método PathGradientBrush::GetSurroundColorCount determina el número actual de colores envolventes (los colores especificados para la ruta de límite del pincel). A continuación, el código asigna un búfer lo suficientemente grande como para recibir la matriz de colores envolventes y llama a PathGradientBrush::GetSurroundColors para rellenar ese búfer. Por último, el código rellena un cuadrado pequeño con cada uno de los colores envolventes del 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 | Value |
---|---|
Cliente mínimo compatible | Windows XP, Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | gdipluspath.h (incluya Gdiplus.h) |
Library | Gdiplus.lib |
Archivo DLL | Gdiplus.dll |
Consulte también
Creación de un degradado de trazado
Rellenar una forma con un degradado de color