Metode IDirectDraw7::CreatePalette (ddraw.h)

Membuat objek DirectDrawPalette untuk objek DirectDraw ini.

Sintaks

HRESULT CreatePalette(
  [in]  DWORD               unnamedParam1,
  [in]  LPPALETTEENTRY      unnamedParam2,
  [out] LPDIRECTDRAWPALETTE *unnamedParam3,
  [in]  IUnknown            *unnamedParam4
);

Parameter

[in] unnamedParam1

Nilai ini terdiri dari satu atau beberapa bendera berikut:

DDPCAPS_1BIT

Indeksnya adalah 1 bit. Ada dua entri dalam tabel warna.

DDPCAPS_2BIT

Indeksnya adalah 2 bit. Ada empat entri dalam tabel warna.

DDPCAPS_4BIT

Indeksnya adalah 4 bit. Ada 16 entri dalam tabel warna.

DDPCAPS_8BIT

Indeksnya adalah 8 bit. Ada 256 entri dalam tabel warna.

DDPCAPS_8BITENTRIES

Indeks mengacu pada indeks warna 8-bit. Bendera ini hanya valid saat digunakan dengan bendera DDPCAPS_1BIT, DDPCAPS_2BIT, atau DDPCAPS_4BIT, dan ketika permukaan target adalah 8 bpp. Setiap entri warna panjangnya 1 byte dan merupakan indeks ke palet 8 bpp permukaan tujuan.

DDPCAPS_ALPHA

Anggota peFlags dari struktur PALETTEENTRY terkait akan ditafsirkan sebagai nilai alfa 8-bit tunggal (selain anggota peRed, peGreen, dan peBlue ). Palet yang dibuat dengan menggunakan bendera ini hanya dapat dilampirkan ke tekstur: permukaan yang dibuat dengan bendera kemampuan DDSCAPS_TEXTURE.

DDPCAPS_ALLOW256

Palet ini dapat memiliki 256 entri yang ditentukan.

DDPCAPS_INITIALIZE

Kedaluwarsa. DirectDraw selalu menginisialisasi palet ini dengan warna dalam array warna yang diteruskan di lpDDColorArray.

DDPCAPS_PRIMARYSURFACE

Palet ini melekat pada permukaan utama. Mengubah tabel warna palet ini segera memengaruhi tampilan kecuali DDPSETPAL_VSYNC ditentukan dan didukung.

DDPCAPS_PRIMARYSURFACELEFT

Palet ini adalah palet yang melekat pada permukaan primer mata kiri. Mengubah tabel warna palet ini segera memengaruhi tampilan mata kiri kecuali DDPSETPAL_VSYNC ditentukan dan didukung.

DDPCAPS_VSYNC

Palet ini dapat memiliki modifikasi yang disinkronkan dengan kecepatan refresh monitor.

[in] unnamedParam2

Alamat array 2, 4, 16, atau 256 struktur PALETTEENTRY untuk menginisialisasi objek DirectDrawPalette.

[out] unnamedParam3

Alamat variabel yang akan diatur ke penunjuk antarmuka IDirectDrawPalette yang valid jika panggilan berhasil.

[in] unnamedParam4

Memungkinkan kompatibilitas di masa mendatang dengan fitur agregasi COM. Saat ini, metode ini mengembalikan kesalahan jika parameter ini bukan NULL.

Nilai kembali

Jika metode berhasil, nilai yang dikembalikan adalah DD_OK.

Jika gagal, metode dapat mengembalikan salah satu nilai kesalahan berikut:

  • DDERR_INVALIDOBJECT
  • DDERR_INVALIDPARAMS
  • DDERR_NOCOOPERATIVELEVELSET
  • DDERR_OUTOFMEMORY
  • DDERR_UNSUPPORTED

Persyaratan

Persyaratan Nilai
Target Platform Windows
Header ddraw.h
Pustaka Ddraw.lib
DLL Ddraw.dll

Lihat juga

IDirectDraw7