Metode PathGradientBrush::SetSurroundColors (gdipluspath.h)

Metode PathGradientBrush::SetSurroundColors mengatur warna sekitar kuas gradien jalur ini. Warna keliling adalah warna yang ditentukan untuk titik diskrit pada jalur batas kuas.

Sintaks

Status SetSurroundColors(
  [in]      const Color *colors,
  [in, out] INT         *count
);

Parameter

[in] colors

Jenis: Const Color*

Penunjuk ke array objek Warna yang menentukan warna surround.

[in, out] count

Jenis: INT*

Penunjuk ke bilangan bulat yang, pada input, menentukan jumlah objek Warna dalam array warna . Jika metode berhasil, parameter ini, pada output, menerima jumlah warna surround yang ditetapkan. Jika metode gagal, parameter ini tidak menerima nilai.

Menampilkan nilai

Jenis: Status

Jika metode berhasil, metode mengembalikan Ok, yang merupakan elemen dari enumerasi Status .

Jika metode gagal, metode mengembalikan salah satu elemen lain dari enumerasi Status .

Keterangan

Sikat gradien jalur memiliki jalur batas dan titik tengah. Titik tengah diatur ke satu warna, tetapi Anda dapat menentukan warna yang berbeda untuk beberapa titik pada batas. Misalnya, Anda menentukan merah untuk warna tengah, dan Anda menentukan biru, hijau, dan kuning untuk titik yang berbeda pada batas. Kemudian saat Anda bergerak di sepanjang batas, warna akan berubah secara bertahap dari biru ke hijau menjadi kuning dan kembali ke biru. Saat Anda bergerak di sepanjang garis lurus dari titik mana pun di batas ke titik tengah, warna akan berubah dari warna titik batas tersebut menjadi merah.

Contoh

Contoh berikut membuat objek PathGradientBrush berdasarkan array tiga titik yang menentukan jalur segitiga. Kode ini juga menginisialisasi array tiga objek Warna . Panggilan ke metode PathGradientBrush::SetSurroundColors mengaitkan setiap warna dalam array warna dengan titik (indeks yang sama) yang sesuai dalam array titik. Setelah warna sekitar kuas gradien jalur diatur, metode Graphics::FillRectangle menggunakan sikat gradien jalur untuk melukis persegi panjang yang mencakup jalur segitiga.

Salah satu tepi segitiga yang dirender berubah secara bertahap dari merah ke hijau. Tepi berikutnya berubah secara bertahap dari hijau ke hitam, dan tepi ketiga berubah secara bertahap dari hitam ke merah. Kode tidak mengatur warna tengah, sehingga warna tengah memiliki nilai default hitam. Saat Anda bergerak di sepanjang garis lurus dari titik mana pun di jalur batas (segitiga) ke titik tengah, warna berubah secara bertahap dari warna titik batas menjadi hitam.

VOID Example_SetSurColor(HDC hdc)
{
   Graphics graphics(hdc);

   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);
   
   graphics.FillRectangle(&pthGrBrush, 0, 0, 200, 200);
}

Persyaratan

   
Klien minimum yang didukung Windows XP, Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header gdipluspath.h (termasuk Gdiplus.h)
Pustaka Gdiplus.lib
DLL Gdiplus.dll

Lihat juga

Kuas dan Bentuk Terisi

Warna

Membuat Gradien Jalur

Mengisi Bentuk dengan Gradien Warna

PathGradientBrush

PathGradientBrush::GetSurroundColorCount

PathGradientBrush::GetSurroundColors