Bagikan melalui


Fungsi SetDialogDpiChangeBehavior (winuser.h)

Dialog dalam konteks Per-Monitor v2 secara otomatis diskalakan DPI. Metode ini memungkinkan Anda menyesuaikan perilaku perubahan DPI mereka.

Fungsi ini bekerja bersama dengan enum DIALOG_DPI_CHANGE_BEHAVIORS untuk mengambil alih perilaku penskalaan DPI default untuk dialog. Fungsi ini dipanggil pada dialog tertentu, yang bendera yang ditentukan disimpan secara individual.

Fungsi ini tidak memengaruhi perilaku penskalaan DPI untuk jendela anak dialog yang dimaksud - yang dilakukan dengan SetDialogControlDpiChangeBehavior.

Sintaks

BOOL SetDialogDpiChangeBehavior(
  HWND                        hDlg,
  DIALOG_DPI_CHANGE_BEHAVIORS mask,
  DIALOG_DPI_CHANGE_BEHAVIORS values
);

Parameter

hDlg

Handel untuk dialog yang perilakunya akan dimodifikasi.

mask

Masker yang menentukan subset bendera yang akan diubah.

values

Nilai yang diinginkan untuk diatur untuk subset bendera yang ditentukan.

Nilai kembali

Fungsi ini mengembalikan TRUE jika operasi berhasil, dan FALSE sebaliknya. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.

Kemungkinan kesalahan ERROR_INVALID_HANDLE jika melewati HWND dialog yang tidak valid, dan ERROR_ACCESS_DENIED jika dialog termasuk dalam proses lain.

Keterangan

Untuk ekstensibilitas, DIALOG_DPI_CHANGE_BEHAVIORS dimodelkan sebagai sekumpulan bendera bit yang mewakili perilaku terpisah. Fungsi ini mengikuti pendekatan dua parameter umum untuk mengatur bendera, di mana masker menentukan subset bendera yang akan diubah.

Ini bukan kesalahan untuk memanggil API ini di luar konteks Per Monitor v2, meskipun bendera tidak akan berpengaruh pada perilaku dialog yang ditentukan sampai konteks diubah menjadi Per Monitor v2.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 10, versi 1703 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2016 [hanya aplikasi desktop]
Target Platform Windows
Header winuser.h
Pustaka User32.lib
DLL User32.dll

Lihat juga

DIALOG_DPI_CHANGE_BEHAVIORS

GetDialogDpiChangeBehavior