METODE IDXGISwapChain::SetFullscreenState (dxgi.h)
Menyetel status tampilan ke layar berjendela atau penuh.
Sintaks
HRESULT SetFullscreenState(
BOOL Fullscreen,
IDXGIOutput *pTarget
);
Parameter
Fullscreen
Jenis: BOOL
Nilai Boolean yang menentukan apakah akan mengatur status tampilan ke layar berjendela atau penuh. TRUE untuk layar penuh, dan FALSE untuk berjendela.
pTarget
Jenis: [in, opsional] IDXGIOutput*
Jika Anda meneruskan TRUE ke parameter Layar penuh untuk mengatur status tampilan ke layar penuh, Anda dapat secara opsional mengatur parameter ini ke penunjuk ke antarmuka IDXGIOutput untuk target output yang berisi rantai pertukaran. Jika Anda mengatur parameter ini ke NULL, DXGI akan memilih output berdasarkan perangkat swap-chain dan penempatan jendela output. Jika Anda meneruskan FALSE ke Layar Penuh, maka Anda harus mengatur parameter ini ke NULL.
Nilai kembali
Jenis: HRESULT
Metode ini mengembalikan salah satu nilai ini.
- S_OK jika tindakan berhasil dan rantai pertukaran ditempatkan dalam status yang diminta.
- DXGI_ERROR_NOT_CURRENTLY_AVAILABLE jika tindakan gagal. Ketika kesalahan ini dikembalikan, aplikasi Anda dapat terus berjalan dalam mode berjendela dan mencoba beralih ke mode layar penuh nanti. Ada banyak alasan mengapa rantai pertukaran mode berjendela tidak dapat beralih ke mode layar penuh. Berikut adalah beberapa contohnya.
- Aplikasi berjalan melalui Server Terminal.
- Jendela output dihilangkan.
- Jendela output tidak memiliki fokus keyboard.
- Aplikasi lain sudah dalam mode layar penuh.
- DXGI_STATUS_MODE_CHANGE_IN_PROGRESS dikembalikan jika transisi mode layar penuh/berjendela terjadi saat API ini dipanggil.
- Kode kesalahan lain jika Anda kehabisan memori atau mengalami kesalahan tak terduga lainnya; kode-kode ini dapat diperlakukan sebagai kesalahan yang keras dan tidak dapat dilanjutkan.
Keterangan
DXGI dapat mengubah status tampilan rantai pertukaran sebagai respons terhadap permintaan pengguna akhir atau sistem.
Kami menyarankan agar Anda membuat rantai pertukaran berjendela dan memungkinkan pengguna akhir untuk mengubah rantai pertukaran ke layar penuh melalui SetFullscreenState; artinya, jangan atur anggota windowed DXGI_SWAP_CHAIN_DESC ke FALSE untuk memaksa rantai pertukaran menjadi layar penuh. Namun, jika Anda membuat rantai pertukaran sebagai layar penuh, berikan juga daftar mode tampilan yang didukung kepada pengguna akhir karena rantai pertukaran yang dibuat dengan mode tampilan yang tidak didukung dapat menyebabkan tampilan menjadi hitam dan mencegah pengguna akhir melihat apa pun. Selain itu, kami sarankan Anda memiliki layar konfirmasi waktu habis atau mekanisme fallback lainnya saat Anda mengizinkan pengguna akhir untuk mengubah mode tampilan.
Catatan untuk aplikasi Bursa Windows
Jika aplikasi Bursa Windows memanggil SetFullscreenState untuk mengatur status tampilan ke layar penuh, SetFullscreenState gagal dengan DXGI_ERROR_NOT_CURRENTLY_AVAILABLE.Anda tidak dapat memanggil SetFullscreenState pada rantai pertukaran yang Anda buat dengan IDXGIFactory2::CreateSwapChainForComposition.
Untuk model presentasi balik, setelah Anda mengubah status tampilan ke layar penuh, Anda harus memanggil ResizeBuffers untuk memastikan bahwa panggilan Anda ke IDXGISwapChain1::P resent1 berhasil.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Windows |
Header | dxgi.h |
Pustaka | DXGI.lib |